home *** CD-ROM | disk | FTP | other *** search
/ Monster Media 1996 #15 / Monster Media Number 15 (Monster Media)(July 1996).ISO / bbs_util / nef234.zip / NEF.DOC < prev    next >
Text File  |  1996-05-20  |  119KB  |  2,915 lines

  1.         **************************************************************
  2.         *                                                            *
  3.         *                                                            *
  4.         *                   **   ** ******* *******                  *
  5.         *                   ***  **  **   *  **   *                  *
  6.         *                   **** **  ** *    ** *                    *
  7.         *                   ** ****  ****    ****                    *
  8.         *                   **  ***  ** *    ** *                    *
  9.         *                   **   **  **   *  **                      *
  10.         *                   **   ** ******* ****                     *
  11.         *                                                            *
  12.         *                                                            *
  13.         *                        Version 2.34                        *
  14.         *                                                            *
  15.         *      File Distribution for "BinkleyTerm Style" Systems     *
  16.         *                                                            *
  17.         *                                                            *
  18.         **************************************************************
  19.         *                                                            *
  20.         *       (C) Copyright 1991-1996  by  Alberto Pasquale        *
  21.         *                                                            *
  22.         *           A L L   R I G H T S   R E S E R V E D            *
  23.         *                                                            *
  24.         **************************************************************
  25.         
  26.         
  27.             "BinkleyTerm" is trademark of Bit Bucket Software, Co.
  28.         
  29.         
  30.  
  31.                 NEF 2.34 User's Manual, by Alberto Pasquale
  32.         
  33.         
  34.                                   INTRODUCTION
  35.         
  36.         
  37.         -> For licensing information, please see License.Doc.
  38.         
  39.         Thanks for evaluating NEF: a "New Echo Files" distribution
  40.         system.
  41.         
  42.                                  Main Features
  43.         
  44.         
  45.         - It works on systems with a Binkley Style outbound and
  46.           *.MSG or Squish message base.
  47.         
  48.         - File Import/Forward/Hatch via the standard .TIC system,
  49.           initially implemented by Tick.
  50.         
  51.         - File "Areafix", to automatically link/unlink file areas via
  52.           netmail messages. Wildcards can be used to make multiple
  53.           link/unlink requests easier.
  54.         
  55.         - Support for "FileBone.Na style" files.
  56.         
  57.         - Automatic forwarding of requests for missing areas to the
  58.           uplinks.
  59.         
  60.         - Fast Squish netmail scan.
  61.         
  62.         - Flexible file announcements via echo or netmail messages.
  63.           Wildcards in file area tags allow easy configuration of
  64.           multiple announcement areas for different groups of file
  65.           areas.
  66.         
  67.         - Full multitasking support. File sharing problems are handled
  68.           wherever necessary.
  69.         
  70.         - Full 4D operation; no direct support for ancient pointnet
  71.           addressing method. However points addressed via pointnet can
  72.           obviously be seen with their pointnet adress.
  73.         
  74.         - Different outbounds for different domains are supported the
  75.           same way as in Squish, via zone mapping.
  76.         
  77.         - Very flexible MultiAka support. You can use different
  78.           addresses in different areas, different addresses for
  79.           different downlinks in the same area, etc.
  80.         
  81.         - Outbound analysis and report to message areas and/or file.
  82.         
  83.         - "Passthru" Area support, with optional deletion-age parameter.
  84.         
  85.         - Long Description ("LDESC" keyword) support.
  86.         
  87.         - Multiple "Desc" support.
  88.         
  89.         - Multi-line description support for Files.Bbs.
  90.         
  91.         - EchoToss.Log support.
  92.         
  93.         - Automatic creation of new areas from authorized uplinks.
  94.         
  95.         - Automatic linking of specified downlinks to selected new
  96.           areas when they are automatically created.
  97.         
  98.         - Check on imported description strings, to avoid trojan horses
  99.           using certain control characters.
  100.         
  101.         - Clean and compact link configuration file.
  102.         
  103.         - Easy addition (on area TAG basis) of text strings at the head
  104.           of imported descriptions, to allow inclusion of flags and
  105.           download counters in selected areas.
  106.         
  107.         - Easy partial/total area split/merge: you can forward
  108.           certain files to a new area TAG.
  109.         
  110.         - Support for Maximus 3.xx FileBase: when the file areas
  111.           are modified the filebase is internally updated (no need for
  112.           external FB/FBP).  The additional UniFiles.Idx (with no
  113.           duplicates) created by QFB (my FB/FBP substitute) is also
  114.           maintained.
  115.         
  116.         - Automatic addition of new areas to the Maximus 3.xx
  117.           configuration.
  118.         
  119.         - Support for Squish configuration file, to get the
  120.           information about path, type and primary address of message
  121.           areas directly from it.
  122.         
  123.         - (OS/2) Support for "Feature DLLs": developers can find the
  124.           necessary Header file and an example C source included in
  125.           the NEF package (Nefeat.H, Feature.C, Feature.Dll).
  126.         
  127.                                     CREDITS
  128.         
  129.         "BinkleyTerm" is a trademark of Bit Bucket Software Co.
  130.         
  131.         This program uses the Squish "MsgAPI" code, Copyright 1991-1994
  132.         by Lanius Corporation. "Squish" and "Maximus" are trademarks of
  133.         Lanius Corporation.
  134.         
  135.         "Tick" is Copyright by Barry Geller
  136.         
  137.         The archivers referred-to throughout this documentation are
  138.         Copyright and/or trademarks of the respective owners.
  139.  
  140.         
  141.                                OVERALL OPERATION
  142.         
  143.         
  144.         When invoked, first of all NEF looks into the netmail area(s)
  145.         for netmail messages to the Link Robot (Areafix like) and
  146.         executes the commands required; then it looks for new .TIC files
  147.         in the netfile area(s) and forwards them.
  148.         
  149.         The ingoing files are moved to their destination directory and
  150.         the description is appended to the files.bbs.
  151.         
  152.         A careful check is operated on the text of the description, to
  153.         avoid trojan horses that use special control characters.
  154.         
  155.         Existing old descriptions for the ingoing files are deleted.
  156.         
  157.         If the Replaces field is present in the ingoing .TIC (and the
  158.         function is not disabled in NEF.CFG), the pertinent file is
  159.         erased and its description removed from the files.bbs.
  160.         
  161.         The forwarded TICs will have a new Path line with UTC time of
  162.         forward and updated SeenBys; Points are not included in the
  163.         SeenBys of TICs addressed to other links, to avoid unnecessarily
  164.         huge lists of SeenBys.
  165.         
  166.         The .BSY support avoids conflicts in the outbound, while
  167.         possible conflicts in the access to files.bbs are minimized by
  168.         waiting several seconds before giving up.
  169.         
  170.         Finally, NEF writes the announcements of the received files;
  171.         each message is limited (before splitting) to the maximum size
  172.         specified with the "MsgSize" statement (default is 12KB to avoid
  173.         problems with old mail processors).
  174.         
  175.         Conflicts on the message base are handled by the Squish MsgAPI.
  176.         
  177.         When the Maximus FileBase support is enabled, a mutual exclusive
  178.         semaphore flag "FileBase.Bsy" is used to avoid concurrent access
  179.         and modification of the filebase by other ApWorks programs.
  180.         There is no need to delete this flag if it remains after a power
  181.         failure or abnormal termination (ApWorks programs are smart
  182.         enough to realize whether the flag is really in use or not).
  183.         
  184.         
  185.                              From Address Selection
  186.         
  187.         The algorythm to choose the "From" address for the TIC files is:
  188.         
  189.         If an aka ovverride is present in the "FileArea" definition
  190.            then use FileArea aka override
  191.         else if an aka override is present in the "FileLink" definition
  192.            then use FileLink aka override
  193.         else if the destination zone matches an "Address" statement
  194.            then use the zone-matching address
  195.         else
  196.            use the primary (first) "Address" statement.
  197.         
  198.         
  199.                               Description Handling
  200.         
  201.         The TIC files can contain "Desc" and "LDesc" lines. Usually the
  202.         description contained in "Desc" line(s) is short and
  203.         unformatted, while that carried by the "LDesc" lines is long,
  204.         multi-line and formatted.
  205.         
  206.         For the announcements, the longest one is selected.
  207.         
  208.         For the Files.Bbs: if MultiLineDesc support is enabled, the
  209.         longest description is used, otherwise the "Desc" one.
  210.         
  211.  
  212.         
  213.         
  214.         
  215.                                   INSTALLATION
  216.         
  217.         
  218.         1) There are 3 versions of NEF: OS/2, NT and DOS/32, distributed
  219.            in different archives. The main program is always named
  220.            NEF.EXE: please make sure you have the correct version.
  221.         
  222.         2) Edit your Nef.Cfg.
  223.            You can find useful examples in the NEF_*.Cfg files and
  224.            detailed information in the "CFG REFERENCE" section of this
  225.            documentation.
  226.         
  227.         3) Edit your batch file in order to call NEF whenever you would
  228.            like to test for the presence of .TIC files in your inbounds
  229.            and process them. If you do not pass a different pathname as
  230.            a command line parameter, Nef.Cfg must reside in the current
  231.            directory.
  232.         
  233.         4) (OS/2): Make sure you have the MSGAPI32.DLL in a directory
  234.              contained in your LIBPATH and the PmHatch.Exe program in
  235.              your PATH. MSGAPI32.DLL can be found in the Squish 1.11
  236.              archive (SQSHP111.LZH).
  237.         
  238.            (NT): Make sure you have the MSGAPINT.DLL in a directory
  239.              contained in your PATH. MSGAPINT.DLL can be found in the
  240.              Max 3.01 for Windows archive (MAX301N.ZIP).
  241.         
  242.            (DOS): Make sure you have the DOS4GW.EXE Dos extender (from
  243.              Rational System Inc.) in your path.
  244.         
  245.              The DOS4GW extender requires an XMS or DPMI memory driver
  246.              installed in your config.sys: e.g. HIMEM.SYS, QEMM (by
  247.              QuarterDeck Office Systems Inc.).
  248.         
  249.         5) In order to have a correct UTC time specification in your
  250.            outgoing TICs, please note that you must have the environment
  251.            variable "TZ" correctly set in config.sys (OS/2) or
  252.            autoexec.bat (DOS).
  253.         
  254.            E.g. for Central European Time (CET):
  255.         
  256.              SET TZ=CET-01 (winter, "normal" solar time)
  257.              SET TZ=CET-02 (summer, daylight saving time).
  258.         
  259.            E.g. for USA East Coast:
  260.         
  261.              SET TZ=EST5EDT
  262.         
  263.              Eastern time is 5h less than UTC and Daylight saving
  264.              applies with the "standard rule" from the first sunday o
  265.              april to the last sunday of october.
  266.         
  267.            More complicate expressions might be used to specify
  268.            automatic change to and back from daylight saving, if a fixed
  269.            rule is available.
  270.         
  271.            E.g. for Central Europe: daylight saving is 1h ahead from the
  272.            last sunday of march to the last sunday of october.
  273.         
  274.              SET TZ=CET-01CDT,M3.5.0,M10.5.0
  275.         
  276.            (See a C manual for further details).
  277.         
  278.  
  279.         
  280.                        Command Line OPTIONS and SWITCHES
  281.         
  282.         
  283.         To get help about the command line syntax, use the "-h" or "-?"
  284.         command line switch: type "NEF -h" or "NEF -?".
  285.         
  286.         The following forms are available:
  287.         
  288.           NEF [<sw>]
  289.           NEF [<sw>] NOTIFY [<adr> ...]
  290.           NEF [<sw>] OUT|OUTVIEW [<file>]
  291.           NEF [<sw>] CLEAN
  292.           NEF [<sw>] HATCH|MATCH|CATCH|SEND
  293.           NEF [<sw>] HATCH|MATCH|CATCH <name>[/<repl>] <TAG> [<desc>] [@DIZ]
  294.         
  295.         where:
  296.         
  297.           <sw> is one or more of:
  298.         
  299.             -c<cfg>
  300.                       Use <cfg> as configuration file instead of the
  301.                       default "Nef.Cfg".
  302.         
  303.                       Example: "Nef -ce:\cfg\nef2.cfg"
  304.         
  305.         
  306.             -d<adr>
  307.                       Hatch to <adr> only.
  308.         
  309.                       If you Hatch/Catch/Match/Send a file with the
  310.                       -d<adr> command line switch, it is sent to <adr>
  311.                       only.
  312.         
  313.                       <adr> can be any 4D address: in the case it is
  314.                       defined as a link in the matching "FileArea" or
  315.                       even only as a "FileLink", the specified akas,
  316.                       password and switches are applied.
  317.         
  318.                       If, on the contrary, <adr> is a unknown address,
  319.                       the Hold flavour is used, no password is put in
  320.                       the TIC and the "from" aka is derived from an
  321.                       aka-match on the zone.
  322.         
  323.                       Example: "Nef -d2:332/589 hatch"
  324.         
  325.         
  326.             -h or -?
  327.                       Help.
  328.         
  329.         
  330.             -k
  331.                       Keep local files (do not Replace,
  332.                       for Match/Catch).
  333.         
  334.         
  335.             -l<log>
  336.                       Use <log> as logfile instead of the one specified
  337.                       via the "StatusLog <log>" configuration statement.
  338.         
  339.                       Example: "Nef -le:\cfg\nef.log"
  340.         
  341.         
  342.             -p
  343.                       Clean passthru areas before terminating, see also
  344.                       the "CLEAN" option.
  345.         
  346.                       Examples:
  347.         
  348.                         NEF -p
  349.                         NEF -p OUT
  350.         
  351.         
  352.             -t
  353.                       Toggle Secure mode (see also the NoSecure cfg
  354.                       statement).
  355.         
  356.           
  357.           A description of options follows:
  358.         
  359.             NOTIFY
  360.                       Notify linked areas to the specified address list,
  361.                       where <adr> is a 4D address.
  362.                       If no address is given or "ALL" is specified, NEF
  363.                       will notify to all defined links.
  364.         
  365.             OUT
  366.                       Outbound analysis (message output), optional
  367.                       concise output to <file> (no specification of each
  368.                       and every attached file). See the <OUT> and
  369.                       <OUTVIEW> "special tags" in the "Announce"
  370.                       section.
  371.         
  372.             OUTVIEW
  373.                       Same as OUT, but optional output to <file> is
  374.                       verbose.
  375.         
  376.             CLEAN
  377.                       Clean passthru areas.
  378.         
  379.                       Since it might be not efficient to always scan the
  380.                       entire outbound to check for passthru files to be
  381.                       deleted, NEF must be explicitly instructed to do
  382.                       so (see also the "-p" command line switch).
  383.         
  384.                       Example: "Nef Clean"
  385.         
  386.             HATCH
  387.                       Traditional hatch.
  388.             MATCH
  389.                       Move file to destination area then hatch.
  390.             CATCH
  391.                       Copy file to destination area then hatch.
  392.             SEND
  393.                       (OS/2) Hatch via PM Dialog.
  394.         
  395.                       If you use one of these hatch options, NEF will
  396.                       not process inbound .TICs; instead it will send
  397.                       the specified files to your links.
  398.         
  399.                       Examples:
  400.                                 "Nef Hatch"
  401.                                 "Nef Match"
  402.                                 "Nef Catch"
  403.                                 "Nef Send" (OS/2 Only)
  404.         
  405.                       When no parameters are specified after the hatch
  406.                       option, your interaction is required: you will be
  407.                       requested the filename specification (Dos or OS/2
  408.                       wildcards allowed) and, for each matching file,
  409.                       the optional "replace" name, the area TAG, the
  410.                       description and the optional "Long Description".
  411.         
  412.                       On the other hand, if you specify the hatch
  413.                       parameters on the command line, you cannot give a
  414.                       "Long Description" apart from that taken from the
  415.                       File_Id.Diz.
  416.         
  417.                       HATCH sends the specified files; they are not
  418.                       moved and their description is not modified.
  419.         
  420.                       MATCH moves the specified files to the directory
  421.                       that corresponds to the specified <TAG>, updates
  422.                       their descriptions (see "Description Handling" in
  423.                       Overall operation) and sends them as per normal
  424.                       hatch. If a <replace> file is specified, it is
  425.                       deleted with its associated description.
  426.         
  427.                       CATCH is just like Match, but the files are copied
  428.                       instead of moved.
  429.         
  430.                (OS/2)
  431.                       SEND allows to specify all the hatch parameters
  432.                       via a user friendly PM Dialog. Please make sure
  433.                       the PmHatch.Exe file is in the PATH. In the case
  434.                       the PmHatch program terminates abnormally, the NEF
  435.                       program will wait for it indefinitely: you can
  436.                       terminate it using CTRL-C or CTRL-Break.
  437.         
  438.                       See the "PmHatch" section below for further
  439.                       information.
  440.         
  441.         
  442.           Parameters for Hatch/Match/Catch:
  443.         
  444.             <name>
  445.                       This is the full pathname of the files you want to
  446.                       H/M/Catch. You need to specify the full path even
  447.                       if you are hatching files that reside in the
  448.                       directory corresponding to <TAG>. O.S. wildcards
  449.                       are allowed.
  450.         
  451.             <replace>
  452.                       This is the optional name of the file to be
  453.                       replaced: if the receiving system has this feature
  454.                       enabled, a file named <replace> in the <TAG> area
  455.                       will be deleted while importing the new file.
  456.         
  457.             <TAG>
  458.                       This is the tag used for distributing an echo-file
  459.                       area.
  460.         
  461.             <desc>
  462.                       This is the "short" file description and must be
  463.                       enclosed between quotes '"'.
  464.         
  465.                       In the case you need to include the '"' character
  466.                       in the description, just precede it with a
  467.                       backslash escape character: '\"'.
  468.         
  469.                       If you want to take this description from the
  470.                       files.bbs, you can just specify "@BBS".
  471.         
  472.                       Although NEF allows not to specify any <desc>, it
  473.                       is highly recommended that a "short" description
  474.                       is supplied, even when a "long" one is used.
  475.         
  476.             @DIZ
  477.                       This parameter allows to (optionally) take a
  478.                       "long" description from the File_Id.Diz contained
  479.                       in archive <name>.
  480.         
  481.                       Please note that this is an additional OPTIONAL
  482.                       field, while <desc> should be MANDATORY (although
  483.                       NEF does not complain about a missing <desc>).
  484.         
  485.                 Note:
  486.                       Please realize that the "short" and "long"
  487.                       descriptions are two separate and indipendent
  488.                       items.
  489.         
  490.                       Short description: single line, "Desc" keyword in
  491.                       TIC files.
  492.         
  493.                       Lond description: multiple lines, "Ldesc" keywords
  494.                       in TIC files.
  495.         
  496.         
  497.         
  498.         Examples:
  499.         
  500.             NEF Hatch d:\p\prg12.rar/prg11.rar COMMS "New comm prg"
  501.         
  502.                 d:\p\prg12.rar is hatched (NOT moved) into the COMMS
  503.                 area; prg11.rar will be deleted on receiving systems.
  504.         
  505.             NEF Catch d:\p\prg12.rar/prg11.rar COMMS "New comm prg"
  506.         
  507.                 d:\p\prg12.rar is copied to the directory corresponding
  508.                 to the COMMS file area and is hatched to the COMMS area.
  509.                 prg11.rar is deleted locally and will be deleted on
  510.                 receiving systems.
  511.         
  512.             NEF Match d:\p\prg12.rar COMMS "New comm prg"
  513.         
  514.                 d:\p\prg12.rar is moved to the directory corresponding
  515.                 to the COMMS file area, it is hatched to the COMMS area,
  516.                 no replace information is put in the outgoing .TICs.
  517.         
  518.             NEF Send
  519.         
  520.                 (OS/2) Invokes the PM dialog window.
  521.         
  522.             NEF Hatch d:\apbbs\nef999.rar APBBS @bbs
  523.         
  524.                 d:\apbbs\nef999.rar is hatched into the APBBS area,
  525.                 taking the description from the files.bbs.
  526.         
  527.             NEF Hatch d:\apbbs\nef999.rar APBBS "Nef 9.99" @diz
  528.         
  529.                 d:\apbbs\nef999.rar is hatched into the APBBS area,
  530.                 taking "Nef 9.99" as the "short" description and the
  531.                 File_Id.Diz (if present in the archive) as the "long"
  532.                 description.
  533.         
  534.             NEF Hatch d:\apbbs\nef999.rar APBBS @bbs @diz
  535.         
  536.                 d:\apbbs\nef999.rar is hatched into the APBBS area,
  537.                 taking the "short" description from the files.bbs and
  538.                 the "long" description from the File_Id.Diz (if it is
  539.                 contained in the archive).
  540.         
  541.             NEF -d2:332/504.2 Hatch d:\apbbs\nef999.rar APBBS @bbs @diz
  542.         
  543.                 Same as above, but the file is hatched to 2:332/504.2
  544.                 only.
  545.         
  546.             NEF OUT
  547.         
  548.                 An outbound analysis is performed, the results are
  549.                 reported via messages in the area(s) configured in
  550.                 Nef.Cfg (see the Announce statement).
  551.         
  552.             NEF OUT Out.Txt
  553.         
  554.                 Same as above, but the output is also written to
  555.                 "Out.Txt" in "concise mode".
  556.         
  557.             NEF OUTVIEW Out.Txt
  558.         
  559.                 Same as above but the file output is verbose.
  560.         
  561.             NEF -p OUT
  562.         
  563.                 NEF will report the status of the outbound and clean the
  564.                 passthru areas.
  565.         
  566.                 If you need to maintain passthru areas, this is the most
  567.                 efficient use, since NEF must scan the outbound once to
  568.                 make two different things ("clean passthru" and
  569.                 "outbound report").
  570.         
  571.             NEF Notify
  572.             NEF Notify All
  573.         
  574.                 A notification message is sent to all the defined links,
  575.                 specifying the linked areas.
  576.         
  577.             NEF Notify 2:332/589 1:234/567
  578.         
  579.                 A notification message is sent to the specified links.
  580.         
  581.                                     PmHatch
  582.         
  583.            OS/2 Only:
  584.         
  585.                 To invoke the PM hatch program you must type "NEF send".
  586.                 The PmHatch program is very simple and intuitive to use:
  587.                 see the following description.
  588.         
  589.                 You can select the destination Area Tag via a drop-down
  590.                 list: just click with the mouse on the button at the
  591.                 right of the entry field.
  592.         
  593.                 You have three radio buttons to select the "type" of
  594.                 hatch (normal, with Copy, with Move), just as you use
  595.                 Hatch/Catch/Match from the command line.
  596.         
  597.                 You can choose the file to be hatched via a file dialog
  598.                 box: just click on the "Browse" push button on the right
  599.                 of the field. The file dialog starts from the directory
  600.                 corresponding to the selected Tag, but you can move to
  601.                 any drive or directory.
  602.         
  603.                 You can also specify a "Replace" file via a file-dialog
  604.                 by clicking on the "Browse" push-button on the right of
  605.                 the "Repl" field.
  606.         
  607.                 When doing Copy or Move, the files.bbs of the
  608.                 destination area is updated and the "replace" file (if
  609.                 specified) is deleted, just as if the file were tossed
  610.                 from the inbound.
  611.         
  612.                 You can mark the "No Local Kill" checkbox to prevent NEF
  613.                 from deleting the "replace" file in the local area.
  614.         
  615.                 You can load a "short description" (Desc) from the
  616.                 files.bbs, by clicking on the "FilesBbs" push-button.
  617.         
  618.                 You can load a multi-line "long description" (Long Desc)
  619.                 from the File_Id.Diz inside the archive, from the
  620.                 Files.Bbs or from a specified file (Arc Diz, FilesBbs,
  621.                 File push-buttons respectively).
  622.         
  623.                 If you do not have the "CompressCfg <filename>"
  624.                 statement in Nef.Cfg, the "Arc Diz" push-button will be
  625.                 disabled.
  626.         
  627.                 Of course you can always fill-in or modify any field
  628.                 manually.
  629.         
  630.                 Now look at the five push-buttons at the bottom of the
  631.                 hatch dialog:
  632.         
  633.                 <OK>: to exit the dialog and hatch all the entered files.
  634.         
  635.                 <Prev>: to visualize the previous hatch entry.
  636.         
  637.                 <Next>: to create a new (empty) entry in order to hatch
  638.                 another file or to move to next entry if <Prev> has been
  639.                 used.
  640.         
  641.                 <Copy>: to copy the visualized entry to the first free
  642.                 position, in order to hatch another file by modifying
  643.                 the current entry.
  644.         
  645.                 <Cancel> or ESC: to cancel the current entry.
  646.         
  647.                 ALT-F4 or "Close", to abort (cancel all the hatch
  648.                 entries).
  649.         
  650.         
  651.         
  652.         
  653.                                   ERRORLEVELS
  654.         
  655.         
  656.           0 - File areas modified: Match or .TIC processed.
  657.           1 - File areas not modified: Hatch or NO .TIC processed.
  658.           2 - Help requested.
  659.           3 - Abnormal termination
  660.           4 - Configuration file not found.
  661.           5 - Invalid parameter on command line.
  662.           6 - No Outbound defined in cfg file.
  663.           7 - Disk Full.
  664.           8 - Out of Memory.
  665.           9 - Can't open Log file.
  666.          10 - Prefix or Suffix too long.
  667.          11 - User Input Error (interactive hatch/match).
  668.          12 - TimeOut waiting for concurrent NEF process to finish.
  669.          13 - Error while accessing .SAV file.
  670.          17 - FileBase Busy TimeOut.
  671.         
  672.         250 - MsgApi: Init Error.
  673.         251 - MsgApi: Area Open Error.
  674.  
  675.         
  676.         
  677.                                  CFG REFERENCE
  678.         
  679.         
  680.         Before analyzing the cfg keywords in detail, let's introduce the
  681.         overall mechanism that is at the basis of NEF's file forwarding
  682.         capabilities.
  683.         
  684.         Each area (defined via the FileArea keyword) can be
  685.         mono-directional or bi-directional.
  686.         
  687.         In bidirectional areas every link can send files to us and we
  688.         forward to everyone, unless those with a "receive-from"
  689.         override.
  690.         
  691.         Monodirectional areas can be "receive from everyone" or "send to
  692.         everyone". Obviously, at least one link must have an override in
  693.         the opposite direction, unless we are the destination or
  694.         origination of all the files.
  695.         
  696.         NEF uses the three flags 'I' (Input: we accept from), 'O'
  697.         (Output: we send to) and '*' (bidirectional) to define the
  698.         direction of an area or link.
  699.         
  700.         Each area has a direction, that can be overridden on a per-node
  701.         basis by a global (in the FileLink statement) or local (in the
  702.         FileArea statement, before the pertinent link address) direction
  703.         override.
  704.         
  705.         In other words: each link has a direction that is defined in
  706.         order of priority (from lowest to highest) by the area direction
  707.         (I|O|* in FileArea), the global link override (in the FileLink
  708.         statement), the local link override (before link address in the
  709.         FileArea statement).
  710.         
  711.         It is recommended not to use the global link override when not
  712.         really useful, so that the area definition statements remain
  713.         clearly readable without the need to keep one eye on the
  714.         FileLink statements.
  715.         
  716.         Usually the global link override is useful when you have an
  717.         uplink for many areas. For example: if one day the uplink and
  718.         one of the downlinks switch their role, you have to move the 'I'
  719.         flag from one FileLink statement to the other with no need to
  720.         change all the area definitions.
  721.         
  722.         The area direction definition is very useful to allow automatic
  723.         linking via the Link Robot both to normal "Uplink to Downlinks"
  724.         areas and to reverse "Downlinks to Uplink" areas (mostly used
  725.         for "pre" areas to collect files and send them to the
  726.         coordinator).
  727.         
  728.         As a matter of facts, in response to a link request, the Link
  729.         Robot only adds the requesting address (with no flags) to the
  730.         FileArea statement. So the real characteristics of the link
  731.         depend on the Area direction and on the link flags (FileLink
  732.         statement).
  733.         
  734.         
  735.         
  736.         
  737.                                  Conventions
  738.         
  739.         
  740.         
  741.         - Items between square brackets (e.g. [<item>]) are optional.
  742.         
  743.         - Items separated by '|' are mutually exclusive (e.g. I|O|*).
  744.         
  745.         - The names of the various Keywords are NOT case sensitive.
  746.         
  747.         - The area TAGs are NOT case sensitive.
  748.           Please be aware that old TIC processors might not be able to
  749.           handle tags longer than 8 characters or containing dots.
  750.         
  751.         - <WTAG> is a "Wild TAG" specification: it can be a normal area
  752.           TAG or contain wildcards in the "OS/2 style".
  753.         
  754.           Examples:
  755.         
  756.           "*LOC*" specifies all tags that contain "LOC".
  757.         
  758.           "FW???" specifies all tags that have up to three characters
  759.           after "FW".
  760.         
  761.         - When a directory path is required, the trailing backslash '\'
  762.           is optional.
  763.         
  764.         - The ';' character starts comments: any character following the
  765.           ';' is ignored. Please note that configuration text strings
  766.           (e.g. Subj, Origin) can contain the ';' character provided
  767.           they are enclosed in quotes '"'.
  768.         
  769.         - The maximum length of configuration lines (including FileArea
  770.           definitions) is 510 characters.
  771.         
  772.         - ... means that you can list further items of the same type.
  773.         
  774.         - Unless differently specified, addresses are standard 4D and
  775.           MUST begin with the zone number (FileArea statements excluded).
  776.         
  777.         Please, note that the order of the configuration statements
  778.         follows some logical rule. In order not to create confusion in
  779.         the .cfg file and not to break some _necessary_ order relation,
  780.         please follow the scheme proposed in the example NEF_*.CFG files
  781.         and in this reference documentation.
  782.         
  783.         
  784.         
  785.                                   S Y S T E M
  786.         
  787.         
  788.         RegKey <RegKey>
  789.         
  790.                 Registered Users only: <RegKey> is the registration key
  791.                 and it is NOT case sensitive.
  792.         
  793.             Example:
  794.         
  795.                 RegKey dfhyuwru6274623
  796.         
  797.         
  798.         
  799.         Address <Address>
  800.         
  801.                 You can use as many Address statements as you need for
  802.                 all of your AKAs. The first one specifies the "primary"
  803.                 address. <Address> is a standard 4D address
  804.                 specification.
  805.         
  806.             Example:
  807.         
  808.                 Address 2:332/504.0   ; Primary Address
  809.                 Address 2:332/524.0   ; Second line aka
  810.                 Address 2:332/500.0   ; Hub aka
  811.                 Address 9:999/999.9   ; one more aka
  812.         
  813.         
  814.         
  815.         StatusLog <LogFile>
  816.         
  817.                 <LogFile> is the name of the file where all the
  818.                 operations performed by NEF will be logged, following
  819.                 the "Binkley Style".
  820.         
  821.                 In multitasking environments, please be sure to use a
  822.                 file that cannot be used by other processes at the same
  823.                 time. For example: if (in your system) NEF can be
  824.                 executed while Binkley is running, please use different
  825.                 log files.
  826.         
  827.                 Multiple NEF processes using the same config file
  828.                 (and therefore the same <LogFile>) will have no problem
  829.                 since NEF does not begin operations until the previous
  830.                 launched instance (if it uses the same .cfg file) has
  831.                 finished.
  832.         
  833.                 Should you not want the log file, you can comment this
  834.                 keyword out.
  835.         
  836.             Example:
  837.         
  838.                 StatusLog d:\bbs\log\nef.log
  839.         
  840.         
  841.         
  842.         EchoTossLog <filename>
  843.         
  844.                 When a message is written into echoareas defined with
  845.                 the "AreaTag" statement, the corresponding
  846.                 TAGs are written (one per line) to <filename>.
  847.         
  848.                 If you use the "MaxPrm" statement (or MAXIMUS
  849.                 environment variable), "EchoTossLog" is not necessary
  850.                 and becomes an override of the echotosslog specification
  851.                 found in the Maximus .PRM file.
  852.         
  853.                 If you do not like this output, you can override with
  854.                 the NUL name: "EchoTossLog NUL".
  855.         
  856.             Example:
  857.         
  858.                 EchoTossLog d:\bbs\squish\echotoss.log
  859.         
  860.         
  861.         
  862.         NetFile <InboundDir>
  863.         
  864.                 You can specify as many NetFile statements as you need,
  865.                 one for each inbound directory where NEF must look for
  866.                 new .TIC files.
  867.                 <InboundDir> is the pathname of the inbound directory.
  868.         
  869.             Example:
  870.         
  871.                 NetFile c:\file\net
  872.         
  873.         
  874.         
  875.         OutBound <RootPath> [<Zone>]
  876.         
  877.                 The outbound directories are specified with the same
  878.                 method as in squish.cfg.
  879.                 <RootPath> should not have an extension.
  880.         
  881.                 The first OutBound statement does not have the <Zone>
  882.                 field and specifies the directory where NEF will build
  883.                 file attaches for the zone of the primary address.
  884.         
  885.                 Subsequent OutBound statements must have the <Zone>
  886.                 field (Decimal). File attaches for the specified <Zone>
  887.                 are built in <RootPath>.<###>, where <###> is a 3 digit
  888.                 extension representing the zone number (hexadecimal).
  889.         
  890.                 File attaches for zones different from the primary one
  891.                 and not matching any <Zone> of the OutBound statements
  892.                 are built in <RootPath>.<###>, where <RootPath> is the
  893.                 one specified in the first OutBound statement and <###>
  894.                 is a 3 digit extension representing the hexadecimal
  895.                 zone number.
  896.         
  897.             Note:
  898.         
  899.                 The "OutBound" statements MUST be preceded by the
  900.                 "Address" ones.
  901.         
  902.             Example:
  903.         
  904.                 OutBound c:\out\fidonet
  905.                 OutBound c:\out\amiganet 39
  906.                 OutBound c:\out\amiganet 40
  907.         
  908.                 FileAttaches will be built in:
  909.                 Primary zone -> c:\out\fidonet
  910.                 zone 39      -> c:\out\amiganet.027
  911.                 zone 40      -> c:\out\amiganet.028
  912.                 other zones  -> c:\out\fidonet.<###>
  913.                                 where <###> is the 3 digit hexadecimal
  914.                                 representation of the zone number
  915.         
  916.         
  917.         
  918.         TicHold <TicDir>
  919.         
  920.                 This specifies the directory that holds all the .TIC
  921.                 files addressed to downlinks until they are sent and
  922.                 erased.
  923.         
  924.             Example:
  925.         
  926.                 TicHold c:\file\tichold
  927.         
  928.         
  929.         
  930.         BusyFlags
  931.         
  932.                 This enables the Binkley-Style .BSY support.
  933.         
  934.                 When attaching a file to a node, the presence of an
  935.                 appropriate .BSY file is checked; if it is present, some
  936.                 other process may be working on the same node, so NEF
  937.                 saves the attach info to a private <config>.SAV file
  938.                 (i.e. NEF.SAV when NEF.CFG is the config file). On
  939.                 subsequent runs, NEF will look for a <config>.SAV file
  940.                 and use the information in it to attempt again the
  941.                 creation of the file attaches.
  942.                 If the .BSY file is not found, it is created, the file
  943.                 attach is built, then the .BSY is erased.
  944.                 The name of the .BSY file is the same as a file attach
  945.                 to the same node: only the extension changes.
  946.         
  947.             Warning:
  948.         
  949.                 The .BSY method has a nasty drawback: if the process
  950.                 that has created a .BSY file hangs or is shutdown
  951.                 abruptly, the .BSY file remains in its outbound
  952.                 directory, so that no other process will gain access to
  953.                 that node until somebody erases the .BSY file. It is
  954.                 advisable to delete *.BSY from the most used outbound
  955.                 directories at startup (in autoexec.bat (Dos) or
  956.                 startup.cmd (OS/2)).
  957.         
  958.         
  959.         
  960.         NoRaidBeforeHatch
  961.         
  962.                 Skips the scanning of netmail before the execution of
  963.                 hatch commands. This might be useful to avoid delays
  964.                 with huge *.MSG areas.
  965.         
  966.         
  967.         
  968.         MsgSize <bytes>
  969.         
  970.                To specify the maximum size (in bytes) for a message
  971.                generated by NEF (minimum 8KB, default 12KB).
  972.         
  973.                Usually a larger message size is useful to avoid too many
  974.                messages in reports of filebone availability. Anyway,
  975.                please be careful not to use a size larger than your
  976.                downlinks can handle.
  977.         
  978.                Example:
  979.         
  980.                MsgSize 90000
  981.         
  982.         
  983.         
  984.         TicAreaCfg <filename>
  985.         
  986.                 This defines the name of the file that contains all the
  987.                 file area definitions. See the "FileArea" keyword below
  988.                 for a description of the syntax.
  989.         
  990.                 This keyword is optional: if you omit it, you can define
  991.                 your file areas directly in the .cfg file, provided you
  992.                 put all the FileArea statements _after_ the FileLink
  993.                 ones, at the end of the .cfg file.
  994.         
  995.                 For systems with few areas the one-file configuration is
  996.                 handy, for systems with many areas and links, the
  997.                 separate file solution is recommended.
  998.         
  999.                 Please note that the TicAreaCfg file can contain
  1000.                 FileArea statements and comments ONLY.
  1001.         
  1002.             Example:
  1003.         
  1004.                 TicAreaCfg d:\bbs\nef\ticarea.cfg
  1005.         
  1006.         
  1007.         
  1008.         CompressCfg <filename>
  1009.         
  1010.           (OS2)
  1011.                 To allow the extraction of File_Id.Diz while using the
  1012.                 Pm Hatch.
  1013.         
  1014.                 <filename> must specify the location and name of a
  1015.                 "Squish style" compress definition file.
  1016.         
  1017.                 In the case you are using a case-sensitive
  1018.                 de/compression program (e.g. OS/2 ZIP/UNZIP), please
  1019.                 make sure to use the correct switches in <filename>.
  1020.         
  1021.                 If you are already using Squish and or Maximus, you
  1022.                 can just specify the name of their compress.cfg (but do
  1023.                 check that they indicate the necessary switches to avoid
  1024.                 case sensitiveness during extraction).
  1025.         
  1026.                 Refer to the "Compress Definition File" section at the
  1027.                 end of this reference for the syntax of this
  1028.                 configuration file.
  1029.         
  1030.             Example:
  1031.         
  1032.                 CompressCfg c:\squish\compress.cfg
  1033.          
  1034.         
  1035.         
  1036.                             Optional Squish Support
  1037.         
  1038.         
  1039.         SquishCfg <filename>
  1040.         
  1041.                 It is used to specify the squish configuration file, so
  1042.                 that the path, type (SDM vs Squish) and primary address
  1043.                 for the announcement areas defined with the "AreaTag"
  1044.                 statement can be automatically looked up.
  1045.         
  1046.                 When SquishCfg is defined, if you use "AreaTag <Tag>" to
  1047.                 define announcement areas, the "FromNode <adr>"
  1048.                 statement is only used to override the primary address
  1049.                 specified for that area in Squish.Cfg (including the
  1050.                 -p<address> overrides).
  1051.         
  1052.                 The "Include" keyword of Squish.Cfg is supported: just
  1053.                 be sure to always use the full pathname in the Include
  1054.                 statement if different from the working path.
  1055.         
  1056.                 Both echomail and netmail areas are recognized by their
  1057.                 Squish tags.
  1058.         
  1059.                 Netmail areas will have the Private attribute and no
  1060.                 origin by default. Local overrides are still possible
  1061.                 via local "Origin" and "Attr" statements.
  1062.         
  1063.             Example:
  1064.         
  1065.                 SquishCfg c:\squish\squish.cfg
  1066.         
  1067.         
  1068.         
  1069.                          Optional Maximus 3.xx Support
  1070.         
  1071.         
  1072.         MaxPrm <filename>
  1073.         
  1074.                 If the MAXIMUS environment variable is defined, this
  1075.                 statement is an optional override only.
  1076.         
  1077.                 It is used to take the default for EchoTossLog and to
  1078.                 get the name and location of the files necessary for
  1079.                 filebase updating. The ".prm" extension in <filename>
  1080.                 can be omitted.
  1081.         
  1082.             Example:
  1083.         
  1084.                 MaxPrm d:\bbs\max\max.prm
  1085.         
  1086.         
  1087.         MaxAreaAdd <fileareactl> <lev[/keys]> <acs> [<division>]
  1088.         MaxAreaCompile <command>
  1089.         
  1090.                NEF is able to add new (created) areas to the Maximus
  1091.                filearea.ctl or equivalent.
  1092.         
  1093.         
  1094.                <fileareactl> is the fully qualified name of the Maximus
  1095.                file-area definition file.
  1096.         
  1097.                <lev[/keys]> protects areas of higher privilege from
  1098.                being automatically added to the Maximus configuration.
  1099.                The level and keys are to be compared to those of
  1100.                ProtArea statements and FileBone-format files.
  1101.         
  1102.                <acs> is the Maximus access string to be used in
  1103.                <fileareactl> for the new area.
  1104.         
  1105.                <division> is the optional specification of a division
  1106.                where you want to put new areas. If not specified or not
  1107.                found, the new areas will be appended at the end of
  1108.                <fileareactl>.
  1109.         
  1110.                <command> is an external command to be executed before
  1111.                NEF ends, from the Maximus system directory.
  1112.                It should be used to compile the new Maximus
  1113.                configuration via SILT/SILTP.
  1114.         
  1115.         
  1116.                The area name is taken equal to the area TAG, with dots
  1117.                changed to underscores.
  1118.         
  1119.                The area description is taken from the FileBone-format
  1120.                files if available, otherwise it is taken equal to the
  1121.                area TAG.
  1122.         
  1123.         
  1124.                Example:
  1125.         
  1126.                MaxAreaAdd d:\max\filearea.ctl 0 Transient Tic.New
  1127.                MaxAreaCompile siltp max -a -2a
  1128.         
  1129.                The new areas, will be inserted at the end of division
  1130.                "Tic.New" in the file "d:\max\filearea.ctl", with an
  1131.                access string of "Transient". Areas with protection level
  1132.                above 0 or any protection key will NOT be added to
  1133.                maximus configuration.
  1134.         
  1135.                Before terminating, NEF will invoke the SILTP compiler to
  1136.                update the area configuration. The command will be
  1137.                executed after changing the current directory to the
  1138.                Maximus system one (probably d:\max\).
  1139.         
  1140.         
  1141.         
  1142.         
  1143.         FileBaseUpdate
  1144.         
  1145.                 Requires the MAXIMUS environment variable or the
  1146.                 "MaxPrm" statement _before_ in the cfg.
  1147.         
  1148.                 NEF will automatically update the filebase for all the
  1149.                 areas changed when tossing/hatching new files. No more
  1150.                 need to run external FBP (FB).
  1151.         
  1152.             Example:
  1153.         
  1154.                 FileBaseUpdate
  1155.         
  1156.         
  1157.         
  1158.         UniqueDmpLine
  1159.         
  1160.                 Forces the generation of FILES.DMP filebase files with
  1161.                 descriptions on one line only (multiple lines are
  1162.                 concatenated).
  1163.         
  1164.                 By default, multi-line descriptions are output without
  1165.                 changes to FILES.DMP: when using L)ocate and N)ewfiles
  1166.                 commands, Maximus will respect the original formatting,
  1167.                 but the continuation lines will be aligned to the left.
  1168.         
  1169.                 When this statement is used, the original formatting of
  1170.                 descriptions is lost (in the filebase) but Maximus will
  1171.                 be able to word-wrap and align when executing L)ocate or
  1172.                 N)ewfiles commands.
  1173.         
  1174.         
  1175.         
  1176.         
  1177.                                  TIC Processing
  1178.         
  1179.         
  1180.         NoSecure
  1181.         
  1182.                 Disables the secure mode.
  1183.         
  1184.                 When "NoSecure" is used, NEF will toss incoming files
  1185.                 ignoring errors due to missing password, password
  1186.                 mismatch and missing from-authorization (sender not
  1187.                 linked, sender receive only).
  1188.         
  1189.                 You can also use the "-t" command line switch to toggle
  1190.                 between Secure and NoSecure modes.
  1191.         
  1192.                 Anyway the error will be noted in the logs and <BAD>
  1193.                 message report (see Announce statement).
  1194.         
  1195.             Example:
  1196.         
  1197.                 NoSecure
  1198.         
  1199.         
  1200.         
  1201.         NoReplace <WTAG> ...
  1202.         
  1203.                 Multiple statements can be used.
  1204.                 The specified <WTAG>s indicate in which areas you do not
  1205.                 want NEF to delete files specified by the "Replaces"
  1206.                 keyword in inbound TICs.
  1207.         
  1208.             Example:
  1209.         
  1210.                 NoReplace *     ; to avoid Replace in all areas
  1211.         
  1212.         
  1213.         
  1214.         CheckCRC
  1215.         
  1216.                 This enables the CRC check of ingoing .TICs.
  1217.                 If an ingoing .TIC has the CRC keyword, the specified
  1218.                 CRC is checked against that of the relative file and an
  1219.                 error is reported in case of mismatch.
  1220.                 Outgoing .TICs will have the CRC only if it is present
  1221.                 in the ingoing one.
  1222.                 TICs originated by NEF (various Hatch modes) will always
  1223.                 have the CRC keyword.
  1224.         
  1225.         
  1226.         
  1227.         Touch [Creation] [Write]
  1228.         
  1229.                 Ingoing files are "touched" while being moved to their
  1230.                 destination directory (i.e. their timestamps are set to
  1231.                 NOW, so that they will be seen as new files by all the
  1232.                 utilities that use the file date-time to compute the age
  1233.                 of files).
  1234.         
  1235.             (OS/2)
  1236.                 There are two optional parameters ("Creation" and
  1237.                 "Write") that allow to configure the type of touch
  1238.                 needed to best suit your environment.
  1239.         
  1240.                 "Creation" -> touch the creation (upload) date
  1241.                 "Write"    -> touch the last-write (modification) date
  1242.         
  1243.                 You can specify either or both options.
  1244.         
  1245.                 When no parameter is used, "Creation" is assumed.
  1246.         
  1247.                 On FAT, the only available date (last-write) is touched
  1248.                 regardless of the Touch options.
  1249.         
  1250.                 On HPFS, the specified date(s) is/are touched.
  1251.         
  1252.                 Usually, you do not need to specify any touch parameter,
  1253.                 so that NEF touches the creation date, not the
  1254.                 modification one, in order to make the files recognized
  1255.                 as new by Maximus and FLM (my File List Manager) without
  1256.                 changing the date that is normally shown and
  1257.                 transferred: you "see" and transfer to your downlinks
  1258.                 the original date of the file while Maximus and FLM are
  1259.                 able to realize that the file is new.
  1260.         
  1261.                 WARNING: if you use some other utility that is not smart
  1262.                 enough to recognize new files from the creation date,
  1263.                 you might need to specify both the "Write" and
  1264.                 "Creation" options.
  1265.         
  1266.             (NT, DOS & OS/2 FAT)
  1267.                 Warning: The original file timestamp is lost and the
  1268.                 downlinks will receive the forwarded files with the new
  1269.                 timestamps.
  1270.         
  1271.         
  1272.             Examples:
  1273.         
  1274.                Touch       ; default: touch the Creation (upload) date
  1275.                Touch Creation              ; same as default
  1276.                Touch Write                 ; touch the Last Write date
  1277.                Touch Creation Write        ; touch both dates
  1278.         
  1279.         
  1280.         
  1281.         KillDate Write|Creation
  1282.         
  1283.             (OS/2)
  1284.                 When the -0<days> switch is used in a FileArea
  1285.                 definition, this statement specifies which date must be
  1286.                 used to evaluate the file age.
  1287.         
  1288.                 This setting is useful for HPFS (which has separate
  1289.                 Write and Creation dates) and ignored for FAT.
  1290.         
  1291.                 If not specified, "Creation" is assumed.
  1292.         
  1293.                 Attention: if you want to delete the files when they
  1294.                 have been on your system for <days> days then you should
  1295.                 choose a date that has been touched on toss (as per
  1296.                 Touch statement).
  1297.         
  1298.             Examples:
  1299.         
  1300.                KillDate Write       ; Use the Write date
  1301.                KillDate Creation    ; same as default
  1302.         
  1303.         
  1304.         
  1305.         MultiLineDesc <nnn> [<c>]
  1306.         
  1307.                 By default, files.bbs description must be on a single
  1308.                 line; this statement enables Multi-Line support.
  1309.         
  1310.                 <nnn> is the number of spaces that must precede the
  1311.                 continuation lines.
  1312.         
  1313.                 <c> is the continuation character.
  1314.         
  1315.                 If <c> is NOT specified, it is assumed that the
  1316.                 continuation lines must be preceded by <nnn> spaces.
  1317.         
  1318.                 If <c> IS specified, it is assumed that the continuation
  1319.                 lines must be preceded by <nnn> spaces, the <c>
  1320.                 character and one more space.
  1321.         
  1322.                 For example, to have the 2nd and following description
  1323.                 lines in files.bbs start at the 32nd column, use:
  1324.         
  1325.                 MultiLineDesc 31
  1326.         
  1327.                 A description in files.bbs would be like:
  1328.         
  1329.                 Test.Zip This is the first description line
  1330.                                                this is the 2nd line
  1331.                                                this is the 3rd line
  1332.                 ^                             ^^
  1333.                 1                           31  32
  1334.         
  1335.                 To have the continuation lines preceded by a '|'
  1336.                 character, use:
  1337.         
  1338.                 MultiLineDesc 29 |
  1339.         
  1340.                 A description in files.bbs would be like:
  1341.         
  1342.                 Test.Zip This is the first description line
  1343.                                              | this is the 2nd line
  1344.                                              | this is the 3rd line
  1345.                 ^                           ^  ^
  1346.                 1                          29  32
  1347.         
  1348.         
  1349.         
  1350.         
  1351.         NewAreasPath <path>
  1352.         NewAreasFrom <address> [-0[<days>]] [#<aka>] [<path>]
  1353.         
  1354.                 <path> is the base directory for new file areas
  1355.                 automatically created by NEF on reception of .TICs with
  1356.                 unknown area TAGs.
  1357.         
  1358.                 <address> is a 4D address that must be enabled to
  1359.                 automatically create new areas.
  1360.         
  1361.                 -0[<days>] (zero) specifies that areas created by
  1362.                 <address> must be PassThru. The optional <days>
  1363.                 parameter specifies that the files in these areas must
  1364.                 not be deleted before they become older than <days>.
  1365.                 <days> is an integer <= 65535.
  1366.         
  1367.                 <aka> is the optional from-address to be used by NEF in
  1368.                 outgoing .TICs for the areas automatically created by
  1369.                 <address>.
  1370.         
  1371.                 The <path> in "NewAreasFrom" is an override for the
  1372.                 default specified in "NewAreasPath".
  1373.         
  1374.                 Any number of NewAreasFrom statements can be used.
  1375.         
  1376.                 While adding new areas, NEF will NOT re-order the
  1377.                 existing ones, anyway it will respect an existing
  1378.                 alphabetical order.
  1379.         
  1380.             Example:
  1381.         
  1382.                 NewAreasPath c:\file
  1383.                 NewAreasFrom 2:331/110
  1384.                 NewAreasFrom 9:1/1 #9:999/999.9
  1385.                 NewAreasFrom 9:2/2 -0 d:\fido\passthru\
  1386.         
  1387.                 Let's suppose we have received a .TIC for area NEWAREA,
  1388.                 which is not currently defined:
  1389.                 - if it is coming from an address different from
  1390.                   2:331/110, 9:1/1 and 9:2/2 -> an error is reported.
  1391.                 - if it is coming from 2:331/110 -> a new area is
  1392.                   created with path c:\file\NEWAREA.
  1393.                 - if it is coming from 9:1/1 -> a new area is created
  1394.                   with path c:\file\NEWAREA and it is configured so that
  1395.                   NEF will use 9:999/999.9 (which must be an aka
  1396.                   previously defined in an Address statement) as the
  1397.                   from-address for outgoing .TICs.
  1398.                 - if it is coming from 9:2/2 -> a passthru area is
  1399.                   created with path d:\fido\passthru\NEWAREA.
  1400.         
  1401.         
  1402.         
  1403.         DescStart "<string>" <WTAG> [<WTAG> ...]
  1404.         
  1405.                 This allows to add <string> at the head of files.bbs
  1406.                 descriptions while tossing files from area TAGs that
  1407.                 match one of the <WTAG> specifications.
  1408.         
  1409.                 This statement is useful for people using download
  1410.                 counters and/or maximus flags for free download.
  1411.         
  1412.             Example:
  1413.         
  1414.                 DescStart "/bt [00] " 1* 2*
  1415.         
  1416.                 This adds "/bt [00] " at the head of files.bbs
  1417.                 descriptions while tossing files from areas whose TAG
  1418.                 begins with '1' or '2'.
  1419.         
  1420.         
  1421.         
  1422.         TagFwd <OrgTag> <FwdTag> <FileSpec> [<FileSpec> ...]
  1423.         
  1424.                 This allows to forward files from an area to another.
  1425.         
  1426.                 <OrgTag> and <FwdTag> are area TAGs.
  1427.                 <FileSpec> is a file specification that accepts the OS/2
  1428.                 style wildcards (?,*).
  1429.         
  1430.                 All ingoing files of area <OrgTag> which match one of
  1431.                 the <FileSpec>s are forwarded to area <FwdTag>.
  1432.                 This way you can split or merge areas.
  1433.         
  1434.             Example:
  1435.         
  1436.                 TagFwd 1-Comm Bbs AC*n prova.*
  1437.                 TagFwd 1-Data bbs *
  1438.                 TagFwd 1-DITO BBS *
  1439.                 TagFwd 1-Comm BBO *
  1440.                 TagFwd ISNMAIN POINTLST ptlist.* ptdoc.*
  1441.         
  1442.                 Files AC*n and prova.* coming from area 1-Comm and all
  1443.                 the files coming from 1-Data and 1-DITO are forwarded to
  1444.                 area BBS.
  1445.         
  1446.                 All the files from 1-COMM are also forwarded to area
  1447.                 BBO.
  1448.         
  1449.                 Files ptlist.* and ptdoc.* from area ISNMAIN are
  1450.                 forwarded to area POINTLST.
  1451.         
  1452.         
  1453.         
  1454.         FeatureLoad <DllName>
  1455.         
  1456.                 (OS/2) Loads a "Feature" DLL, to allow third party
  1457.                 extensions to NEF.
  1458.         
  1459.                 <DllName> can be a simple filename without extension
  1460.                 (".DLL" implied) if the DLL is in the LibPath, otherwise
  1461.                 a fully qualified filename (extension included) can be
  1462.                 specified.
  1463.         
  1464.         Feature <cfgline>
  1465.         
  1466.                 (OS/2) Allows to specify configuration statements that
  1467.                 are to be parsed by the DLL loaded with the previous
  1468.                 FeatureLoad.
  1469.         
  1470.             Note:
  1471.                 Multiple FeatureLoad statements are allowed, in which
  1472.                 case the Feature statements refer to the last loaded
  1473.                 DLL.
  1474.         
  1475.             Example:
  1476.         
  1477.                 FeatureLoad MyDll
  1478.                 Feature CfgItem1 "This is Item 1"
  1479.                 Feature CfgItem2 "This is Item 2"
  1480.         
  1481.         
  1482.         
  1483.                                TIC Announcements
  1484.         
  1485.         
  1486.         Each announcement area is defined by a dedicated group of
  1487.         statements. Many of these statements can be used before the
  1488.         first announcement area definition to establish defaults to be
  1489.         used in all subsequent area definitions, thus avoiding the need
  1490.         to unnecessarily repeat common statements.
  1491.         
  1492.         
  1493.                                 Global Keywords
  1494.         
  1495.             Statements that can be used before area definitions to set
  1496.             defaults (please note that all these statements can be
  1497.             overridden in each area definition).
  1498.         
  1499.         
  1500.         FromNode <address>
  1501.         
  1502.                 This specifies the 4D address to be used as the
  1503.                 from-address in the announcement messages: it is used in
  1504.                 the header, in the Origin and in the MSGID. Usually, it
  1505.                 should be your primary address.
  1506.         
  1507.             Example:
  1508.         
  1509.                 FromNode     2:332/504.0
  1510.         
  1511.         
  1512.         
  1513.         ToNode <address>
  1514.         
  1515.                 This specifies the 4D address to be used as the
  1516.                 to-address in the announcement messages: it is used in
  1517.                 the header. Usually, for echo area announcements, it
  1518.                 should be the same as in FromNode.
  1519.         
  1520.             Example:
  1521.         
  1522.                 ToNode       2:332/504.0
  1523.         
  1524.         
  1525.         
  1526.         From <name>
  1527.         
  1528.                 This specifies the name to be used as the from-name in
  1529.                 the announcement messages. Usually it should be the
  1530.                 SysOp name.
  1531.         
  1532.             Example:
  1533.         
  1534.                 From         Alberto Pasquale
  1535.         
  1536.         
  1537.         
  1538.         To <name>
  1539.         
  1540.                 This specifies the name to be used as the to-name in the
  1541.                 announcement messages. Usually it should be "All".
  1542.         
  1543.             Example:
  1544.         
  1545.                 To           All
  1546.         
  1547.         
  1548.         
  1549.         Subj <subject>
  1550.         
  1551.                 This specifies the string to be used as the subject in
  1552.                 the announcement messages.
  1553.         
  1554.             Note:
  1555.         
  1556.                 If the Subj text contains the ';' character, it MUST
  1557.                 be enclosed in quotes '"', otherwise it will be taken as
  1558.                 the start of a comment.
  1559.         
  1560.             Examples:
  1561.         
  1562.                 Subj    New Echo Files
  1563.                 Subj    "New files; OS/2 BBS"
  1564.         
  1565.         
  1566.         
  1567.         Attr [P][K][C|H|D|N|O]
  1568.         
  1569.                 This specifies the attributes to be used in the
  1570.                 announcement messages. Usually no special attribute is
  1571.                 necessary, except for private announcements in the
  1572.                 netmail area.
  1573.         
  1574.                 The available attributes are:
  1575.                 P -> Private
  1576.                 K -> Kill/Sent
  1577.                 C -> Crash
  1578.                 H -> Hold
  1579.                 D -> Direct (equivalent to "CH")
  1580.                 N -> Normal (default)
  1581.                 O -> Normal (default)
  1582.         
  1583.                 The required attributes can be listed in any order and
  1584.                 are not case sensitive.
  1585.         
  1586.             Examples:
  1587.         
  1588.                 Attr            ; no attributes
  1589.                 Attr N          ; no attributes (Normal flavour)
  1590.                 Attr PK         ; Private and Kill/Sent
  1591.                 Attr PC         ; Private and Crash
  1592.                 Attr PDK        ; Private, Direct, and Kill/Sent
  1593.         
  1594.         
  1595.         
  1596.         HighAsciiOk
  1597.         
  1598.                 Grants permission for High Ascii codes (> 127) in file
  1599.                 descriptions.
  1600.         
  1601.         
  1602.         
  1603.         Prefix <filename>
  1604.         
  1605.                 This specifies the file containing the prefix text for
  1606.                 announcement messages: it is put at the head of the
  1607.                 message body, just before the real announcement lines.
  1608.                 It should usually contain something like "New Echo Files
  1609.                 Received:".
  1610.         
  1611.             Example:
  1612.         
  1613.                 Prefix       d:\bbs\NEF\PREFIX.NEF
  1614.         
  1615.         
  1616.         
  1617.         Suffix <filename>
  1618.         
  1619.                 This specifies the file containing the suffix text for
  1620.                 announcement messages: it is put at the end of the
  1621.                 message body, just before the tear-line and the Origin.
  1622.                 It should usually contain something like "File Request
  1623.                 open to everybody between 06:00 and 23:00 GMT".
  1624.         
  1625.             Example:
  1626.         
  1627.                 Suffix       d:\bbs\NEF\SUFFIX.NEF
  1628.         
  1629.         
  1630.         
  1631.         Origin <origin>
  1632.         
  1633.                 This specifies the text to be used as the Origin in
  1634.                 announcement messages. The required " * " will
  1635.                 automatically be added at the head and the address at
  1636.                 the end, truncating <origin> if necessary to fit the 79
  1637.                 character maximum length.
  1638.                 To disable the Origin (e.g. in netmail area) use an
  1639.                 empty origin string.
  1640.         
  1641.             Note:
  1642.         
  1643.                 If the Origin text contains the ';' character, it MUST
  1644.                 be enclosed in quotes '"', otherwise it will be taken as
  1645.                 the start of a comment.
  1646.         
  1647.             Examples:
  1648.         
  1649.                 Origin       <ApWorks Modena I><Tel.+39-59-246112/3>
  1650.                 Origin       "ApWorks Modena I; +39-59-246112/3"
  1651.                 Origin       ; empty origin to disable origin generation
  1652.         
  1653.         
  1654.         
  1655.                                 Area Definition
  1656.         
  1657.             All the preceding statements can be used both before
  1658.             announcement area definitions (to set defaults) and inside
  1659.             each definition to override the defaults.
  1660.         
  1661.         
  1662.         AreaTag <Tag> [<path> [-$]]
  1663.         AreaPath <path> [-$]
  1664.         
  1665.                 One of these statements starts the definition of an
  1666.                 announcement area.
  1667.         
  1668.                 <Tag> is the area TAG, to be logged to EchoTossLog
  1669.                 provided this is not a NetMail area.
  1670.         
  1671.                 <path> is the directory for the *.MSG format or the full
  1672.                 filename (no extension) for the Squish base.
  1673.         
  1674.                 -$ specifies the use of the Squish format.
  1675.         
  1676.         
  1677.             AreaTag <Tag>
  1678.         
  1679.                 This is the form to be generally used when SquishCfg is
  1680.                 defined.
  1681.         
  1682.                 <Tag> will be looked up in SquishCfg to find the
  1683.                 corresponding path, message-base type and primary
  1684.                 address.
  1685.         
  1686.                 A local "FromNode" statement can be used to override the
  1687.                 primary address for the area (including -p<address>
  1688.                 specifications) found in SquishCfg.
  1689.         
  1690.                 If this is an EchoArea, its <Tag> will be output to the
  1691.                 EchoTossLog whenever a message is written to this area.
  1692.         
  1693.                 If this is a NetArea, as a default, the Origin will not
  1694.                 be used and the Private attribute will be set; you can
  1695.                 override this with local "Origin" and "Attr" statements.
  1696.         
  1697.         
  1698.             AreaTag <Tag> <path> [-$]
  1699.         
  1700.                 This is the form to be used for EchoMail areas when
  1701.                 SquishCfg is not defined or you want to override its
  1702.                 information AND you want <Tag> to be logged to
  1703.                 EchoTossLog.
  1704.         
  1705.         
  1706.             AreaPath <path> [-$]
  1707.         
  1708.                 This is the form to be used when SquishCfg is not
  1709.                 defined AND you do not need to log a <Tag> to
  1710.                 EchoTossLog (NetMail areas or no EchoTossLog defined).
  1711.         
  1712.             Notes:
  1713.         
  1714.                 Any of the statements described above in this "Tic
  1715.                 Announcements" section can be used after the
  1716.                 AreaTag/AreaPath statement to override the defaults for
  1717.                 this announcement area only.
  1718.         
  1719.                 Please note that you can use different AreaTag/AreaPath
  1720.                 definitions with the same message area Tag/Path, in
  1721.                 order to announce different file areas in different
  1722.                 messages but in the same message area.
  1723.         
  1724.             Examples:
  1725.         
  1726.                 AreaTag OS2BBS
  1727.                 AreaTag OS2BBS d:\bbs\mail\os2bbs -$
  1728.                 AreaPath d:\bbs\mail\net
  1729.         
  1730.         
  1731.         
  1732.         Announce <WTAG> [<WTAG> ...]
  1733.         NoAnnounce <WTAG> [<WTAG> ...]
  1734.         
  1735.                 This defines the list of file areas to be announced in
  1736.                 the current announcement message area (the one defined
  1737.                 by the previous AreaTag/AreaPath statement).
  1738.         
  1739.                 Multiple statements are allowed.
  1740.         
  1741.                 All the TAGs that match one of the <WTAG>s in "Announce"
  1742.                 and do not match any of the <WTAG>s in "NoAnnounce" are
  1743.                 announced in the current area.
  1744.         
  1745.                 Obviously you can omit the "NoAnnounce" statement if you
  1746.                 do not need to exclude areas that have been included via
  1747.                 the "Announce" statement.
  1748.         
  1749.                 "Announce *" makes all the file areas announced.
  1750.         
  1751.             Special tags:
  1752.         
  1753.                 The following "special tags" can be used in "Announce"
  1754.                 or "NoAnnounce" statements as if they were normal area
  1755.                 TAGs, but are not included in the "*" wildcard (i.e.
  1756.                 "Announce *" does not make them announced).
  1757.         
  1758.                 "<BAD>" is used to announce all the TICs that have been
  1759.                 processed with some error.
  1760.         
  1761.                 "<DEF>" is used to announce all the files that have not
  1762.                 been announced elsewhere. A separate announcement is
  1763.                 generated after all other announcements have been
  1764.                 completed, even if "<DEF>" is listed together with other
  1765.                 TAGs.
  1766.         
  1767.                 "<OUT>" is used to make a concise outbound report when
  1768.                 the OUT or OUTVIEW command line option is used.
  1769.                 Subj, Prefix and Suffix are ignored.
  1770.         
  1771.                 "<OUTVIEW>" is used to make a detailed outbound report
  1772.                 when the OUT or OUTVIEW command line option is used.
  1773.                 Subj, Prefix and Suffix are ignored.
  1774.         
  1775.                 "<THRU>" represents all passthru areas. If you want to
  1776.                 keep NEF from announcing files received in PassThru
  1777.                 areas, just use "NoAnnounce <THRU>".
  1778.         
  1779.             Examples:
  1780.         
  1781.                 Announce UTILNET SOFTDIST SDS*
  1782.                 NoAnnounce SDSOTH <THRU>
  1783.         
  1784.                 This announces the file areas with tag "UTILNET",
  1785.                 "SOFTDIST" and all those whose TAG starts with "SDS" but
  1786.                 not "SDSOTH" or passthru areas.
  1787.         
  1788.                 Announce PRIVFILE <BAD> <DEF>
  1789.         
  1790.                 This announces area "PRIVFILE" and all the TICs that
  1791.                 have been processed with errors; at the end, in a
  1792.                 separate message, it announces the files that have not
  1793.                 been announced elsewhere.
  1794.         
  1795.                 Announce SPECIAL <OUT>
  1796.         
  1797.                 This announces the file area with tag "SPECIAL"; at the
  1798.                 end, in a separate message, it creates a concise report
  1799.                 of the outbound.
  1800.         
  1801.                 Announce SPECIAL <OUTVIEW>
  1802.         
  1803.                 This announces the file area with tag "SPECIAL"; at the
  1804.                 end, in a separate message, it creates a verbose report
  1805.                 of the outbound.
  1806.         
  1807.         
  1808.         
  1809.         
  1810.             Complete example of the announcement definition section,
  1811.             SquishCfg defined:
  1812.         
  1813.         ----------------------------------------------------------------
  1814.         
  1815.           ; Defaults definition
  1816.         
  1817.             FromNode     2:332/504.0
  1818.             ToNode       2:332/504.0
  1819.             From         Alberto Pasquale
  1820.             To           All
  1821.             Subj         New Echo Files
  1822.             Attr
  1823.             Prefix       PREFIX.NEF
  1824.             Origin       ApWorks Modena I (+39-59-246112/3)
  1825.             Suffix       SUFFIX.NEF
  1826.         
  1827.           ; Announcement areas: each statement is local to the preceding
  1828.           ; AreaTag and overrides the default one.
  1829.         
  1830.             AreaTag      APWORKS
  1831.             Announce     APBBS*
  1832.             Prefix       RelPre.NEF
  1833.             Subj         New ApWorks files
  1834.         
  1835.             AreaTag      OS2BBS
  1836.             Announce     APBBS*
  1837.             NoAnnounce   *DOS*
  1838.             Prefix       RelPre.NEF
  1839.             Subj         New APBBS files
  1840.         
  1841.             AreaTag      NETMAIL
  1842.             Announce     <OUTVIEW> <DEF>
  1843.             From         NEF
  1844.             To           Alberto Pasquale
  1845.             Subj         Not Announced Elsewhere
  1846.             HighAsciiOk
  1847.         
  1848.             AreaTag      NETMAIL
  1849.             Announce     <BAD>
  1850.             From         NEF
  1851.             To           Alberto Pasquale
  1852.             ToNode       2:332/504.1
  1853.             Subj         Processed with Errors
  1854.         
  1855.         ----------------------------------------------------------------
  1856.         
  1857.             Complete example of the announcement definition section,
  1858.             SquishCfg NOT defined:
  1859.         
  1860.         ----------------------------------------------------------------
  1861.         
  1862.           ; Defaults definition
  1863.         
  1864.             FromNode     2:332/504.0
  1865.             ToNode       2:332/504.0
  1866.             From         Alberto Pasquale
  1867.             To           All
  1868.             Subj         New Echo Files
  1869.             Attr
  1870.             Prefix       PREFIX.NEF
  1871.             Origin       <ApWorks Modena I><Tel.+39-59-246112/3>
  1872.             Suffix       SUFFIX.NEF
  1873.         
  1874.           ; Announcement areas: each statement is local to the preceding
  1875.           ; AreaPath and overrides the default one.
  1876.         
  1877.             AreaTag      SWN_332.500 d:\msg\swn -$
  1878.             Announce     UTILNET
  1879.             Subj         UTILNET file news
  1880.         
  1881.             AreaTag      SWN_332.500 d:\msg\swn -$
  1882.             Announce     FIDONEWS SDS* ECHO-* FTSC NEWSLETR SOFTDIST
  1883.             NoAnnounce   ECHO-R*
  1884.             Subj         SDS/NEWS file news
  1885.         
  1886.             AreaPath     d:\msg\net -$    ; Netmail to the SysOp
  1887.             Announce     NODE* POINTLST <BAD> <DEF> <OUTVIEW>
  1888.             From         NEF
  1889.             To           Alberto Pasquale
  1890.             ToNode       2:332/504.1
  1891.             Subj         Reserved file news
  1892.             Attr         PK      ; This must be private and kill/sent
  1893.             Origin               ; No Origin for netmail !
  1894.         
  1895.         ----------------------------------------------------------------
  1896.         
  1897.         
  1898.         
  1899.         
  1900.                                FileFix Link Robot
  1901.         
  1902.         
  1903.         It's the traditional "Raid" or "TicFix" function: it allows
  1904.         downlinks (but also special uplinks) to link/unlink file areas
  1905.         via a netmail message.
  1906.         
  1907.         The message should have the agreed password as the subject,
  1908.         possibly followed by some switch.
  1909.         The required password is that defined in the "FileLink"
  1910.         statement described below.
  1911.         
  1912.         The body of the message contains the commands.
  1913.         There can be several commands on a single line provided they are
  1914.         separated by blanks.
  1915.         
  1916.         Password, switches and commands are case insensitive.
  1917.         
  1918.         Switches that can be used in the subject, after the password,
  1919.         only the _first_ letter is required (and checked):
  1920.         
  1921.             -Help           Help.
  1922.             -Query          List all areas (linked and available).
  1923.             -Linked         List linked areas.
  1924.             -Unlinked       List unlinked areas.
  1925.         
  1926.         
  1927.         The commands available for the message body are:
  1928.         
  1929.             [+]<WTAG>
  1930.                 Links all the areas whose TAG matches <WTAG>.
  1931.                 The '+' character is optional (useful in the case <WTAG>
  1932.                 starts with the '-' character).
  1933.         
  1934.             -<WTAG>
  1935.                 Unlinks all the areas whose TAG matches <WTAG>.
  1936.         
  1937.             %Help        same as -h
  1938.             %Query       same as -q
  1939.             %List        same as -q
  1940.             %Linked      same as -l
  1941.             %Unlinked    same as -u
  1942.         
  1943.         
  1944.         Example:
  1945.         
  1946.                 From: John Doe of 2:332/580.0
  1947.                 To:   Nef      of 2:332/504.0
  1948.                 Subj: Secret -H
  1949.                 -----------------------------
  1950.                 %Query
  1951.                 1* -1-COMM
  1952.                 +2*
  1953.                 -2-WINDOW
  1954.                 ---
  1955.         
  1956.                 The Help and Query commands are invoked, all areas whose
  1957.                 tag begins with '1' are linked, area "1-COMM" is
  1958.                 unlinked, all areas whose tag begins with '2' are linked
  1959.                 and area "2-WINDOW" is unlinked.
  1960.         
  1961.         Notes:
  1962.                 The actual order of command execution is based on the
  1963.                 area definition order. NEF scans the defined areas from
  1964.                 the first to the last one only once, applying for each
  1965.                 area all the pertinent commands.
  1966.         
  1967.                 If a link in a FileArea statement is not properly
  1968.                 defined in a FileLink one, it is removed when the
  1969.                 Link Robot re-writes that FileArea statement in
  1970.                 execution of an Add or Delete command.
  1971.         
  1972.                 While re-writing areas, the Link Robot will NOT re-order
  1973.                 the links. However it will respect an existing order
  1974.                 while adding new links.
  1975.         
  1976.                 If Area aka overrides are used, they are reported by
  1977.                 Area-List commands.
  1978.         
  1979.         
  1980.         
  1981.         AutoLink <name>
  1982.         
  1983.                 The robot will answer to the messages addressed to one
  1984.                 of the addresses defined in the "system" section and to
  1985.                 one of the names defined in the AutoLink statements.
  1986.                 You can use as many AutoLink statements as you need to
  1987.                 define all the akas you like.
  1988.                 If no AutoLink statement is used, then the Link Robot is
  1989.                 disabled.
  1990.         
  1991.             Example:
  1992.         
  1993.                 AutoLink NEF
  1994.                 AutoLink Raid
  1995.                 AutoLink TicFix
  1996.         
  1997.         
  1998.         NetMail <path> [-$] [-p<adr>]
  1999.         
  2000.                 This defines a netmail area to be searched for messages
  2001.                 addressed to the robot. You can use as many NetMail
  2002.                 statements as you need.
  2003.         
  2004.                 The optional -$ indicates a Squish format area.
  2005.         
  2006.                 The optional "-p<adr>" specifies the primary (default)
  2007.                 address for the area.
  2008.         
  2009.                 When multiple NetMails are defined, NEF needs <adr> to
  2010.                 choose (via zone matching) the right area where to write
  2011.                 the messages addressed to the FileBone's "FileFix" robot.
  2012.         
  2013.                 Usually all but the first netmail statements should
  2014.                 contain a primary address specification.
  2015.         
  2016.                 Note: when a Squish base is used, a pointer to the last
  2017.                 scanned message is stored in <path>.NEF, so that next
  2018.                 scan will consider new messages only.
  2019.         
  2020.             Example:
  2021.         
  2022.                 NetMail d:\msg\fidonet -$              ; default
  2023.                 NetMail d:\msg\os2net  -$ -p89:456/789 ; OS2Net
  2024.         
  2025.         
  2026.         
  2027.         KillReceived
  2028.         
  2029.                 This keyword instructs NEF to kill messages addressed to
  2030.                 the Link Robot after the execution of the contained
  2031.                 commands. When commented out, the messages are marked as
  2032.                 received instead of being erased.
  2033.         
  2034.         
  2035.         AreaDescWrap <indent> <right>
  2036.         
  2037.                 The descriptions returned by the "FileFix" functions
  2038.                 will be word-wrapped so that continuation lines start
  2039.                 with <indent> spaces and do not exceed column <right>.
  2040.         
  2041.             Example:
  2042.         
  2043.                 AreaDescWrap 25 79
  2044.         
  2045.         
  2046.         
  2047.         HelpFile <filename>
  2048.         
  2049.                 This keyword defines the file to be put into the Link
  2050.                 Robot's answer in reply to a Help request.
  2051.         
  2052.                 Usually this file contains instructions for using the
  2053.                 Link Robot.
  2054.         
  2055.             Example:
  2056.         
  2057.                 HelpFile d:\bbs\nef\NefHelp.Txt
  2058.         
  2059.         
  2060.         
  2061.         ProtArea <WTAG> <level>[/<keys>]
  2062.         
  2063.                 This keyword allows to selectively protect areas from
  2064.                 automatic linking. Unlinking is always possible.
  2065.         
  2066.                 The protection scheme is based on the traditional
  2067.                 combination of level and keys.
  2068.         
  2069.                 <WTAG>  specifies the TAG or group of TAGs to be
  2070.                         protected.
  2071.                 <level> is an integer number in the range 0-65535.
  2072.                 <keys>  is a subset of the following 32 element set:
  2073.                         {12345678ABCDEFGHIJKLMNOPQRSTUVWX}
  2074.                         These keys are case insensitive.
  2075.         
  2076.                 When processing an area TAG, NEF scans the ProtArea
  2077.                 statements from the first one to the last one: the first
  2078.                 matching <WTAG> determines the protection level and
  2079.                 keys. If no match is found, <level> is assumed to be the
  2080.                 maximum and <keys> the full set of available keys, so
  2081.                 that the area gains maximum protection.
  2082.         
  2083.                 Usually it's convenient to override the default maximum
  2084.                 protection so that you can list only a few special areas
  2085.                 with their protection level and keys while letting all
  2086.                 the others get a default NULL protection (automatic
  2087.                 linking for everybody). To accomplish this result, you
  2088.                 can use a "ProtArea * 0" as the last ProtArea statement.
  2089.         
  2090.                 Please, note that the order of the ProtArea statements is
  2091.                 _essential_, since they area scanned from the first one
  2092.                 to the last one in search for a match between the TAG in
  2093.                 examination and the <WTAG> of the ProtArea statements.
  2094.         
  2095.             Example:
  2096.         
  2097.                 ProtArea PRIVATE  1000/12ABC  ; Protected private area
  2098.         
  2099.                 ProtArea 1*       100/P       ; Areas starting with '1'
  2100.                                               ; are not for everybody.
  2101.         
  2102.                 ProtArea *        0           ; The remaining areas are
  2103.                                               ; for everybody.
  2104.         
  2105.         
  2106.         
  2107.                                 FileBone Support
  2108.         
  2109.         
  2110.         NEF is able to use information distributed via the FileBone.Na
  2111.         and FileBone.No files.
  2112.         
  2113.         Many useful functions are allowed by the use of these files, so,
  2114.         even if you do not receive them from your uplink, you could
  2115.         evaluate the possibility of creating "FileBone-style" files on
  2116.         your own, just to store some information that can be retrieved
  2117.         by NEF.
  2118.         
  2119.         When FileBone-style files are used:
  2120.         
  2121.         - The Query command reports the areas available on the FileBone,
  2122.           in addition to those that are not linked to the downlink but
  2123.           already available on the local system.
  2124.         
  2125.         - Area descriptions can be returned by FileFix commands.
  2126.         
  2127.         - Level and Keys protect areas from "FileFix" linking.
  2128.           A node is entitled to add an area only if it has level and
  2129.           keys that match the requirements from BOTH the "ProtArea"
  2130.           statements in Nef.Cfg and the <lev>[/<keys>] specification
  2131.           in a FileBone format file (if available).
  2132.         
  2133.         - Requests for unlinked areas can be forwarded to the FileBone.
  2134.         
  2135.           The requests that have been forwarded to some uplink are
  2136.           stored in a file named after the configuration one, changing
  2137.           the extension to ".Fwd". Usually the configuration file is
  2138.           "Nef.Cfg", so the forwarded requests will be stored in
  2139.           "Nef.Fwd".
  2140.         
  2141.           The format is: <Tag> <Addr>, i.e. every line contains a Tag
  2142.           followed by the 4D Address of the downlink that made the
  2143.           request.
  2144.         
  2145.           When a new area is created, NEF looks into this file in order
  2146.           to find nodes to be added to the new "FileArea" definition.
  2147.         
  2148.           If a requested (and not yet defined) Tag is found in two or
  2149.           more FileBone files, the request is forwarded to the uplink
  2150.           defined in the first FileBone statement only.
  2151.         
  2152.           Don't mind if the Nef.Fwd file contains multiple entries for
  2153.           the same Tag. This can happen when multiple requests for the
  2154.           same area have been received. When the first file comes in
  2155.           and the area is created, all entries will be deleted while
  2156.           the link will be added once.
  2157.           
  2158.         
  2159.         
  2160.         FileBone <file> [<fm> <to> <toadr> <acc> [<pre>]]
  2161.         
  2162.                 Multiple FileBone statements are allowed.
  2163.         
  2164.                 <file> is the filename of the FileBone-style file.
  2165.         
  2166.                 If you want to enable the forward of requests for new
  2167.                 areas from your downlinks to your uplink(s), you must
  2168.                 specify the following fields (to be enclosed between
  2169.                 quotes when containing space) so that they can be used
  2170.                 to write netmail messages to your uplink's FileFix:
  2171.         
  2172.                 <fm> is the "from" name.
  2173.         
  2174.                 <to> is the "to" name.
  2175.         
  2176.                 <toadr> is the "to" 4D address.
  2177.         
  2178.                 <acc> is a <level>[/keys] specification, to limit the
  2179.                       access of downlinks to request forwards addressed
  2180.                       to <toadr> for the areas described in <file>.
  2181.         
  2182.                 <pre> is an optional string to be prefixed to the area
  2183.                       Tags that are being requested.
  2184.         
  2185.             Examples:
  2186.         
  2187.                 FileBone \bbs\FileBone.Na "John Doe" SysOp 2:332/1 0
  2188.         
  2189.                 The "\bbs\FileBone.Na" file is used by NEF, also for
  2190.                 request forwards.
  2191.         
  2192.                 When a downlink requests an area that is not currently
  2193.                 defined in the NEF configuration (usually TicArea.Cfg)
  2194.                 but is described in FileBone.Na, a netmail message is
  2195.                 written by NEF from "John Doe" to "SysOp" of 2:332/1
  2196.                 using the appropriate "from address" aka and "subject"
  2197.                 (password) as per the "FileLink" definition of 2:332/1.
  2198.                 The body contains a list of the requested area Tags, one
  2199.                 per line.
  2200.         
  2201.                 No (<acc> = "0") protection is specified (any downlink
  2202.                 has access to request forwards).
  2203.         
  2204.         
  2205.                 FileBone \bbs\FB.SP "John Doe" SysOp 2:332/1 30/a +
  2206.         
  2207.                 Only downlinks with level equal or above 30 and with the
  2208.                 'A' key have access to request forwards. The requested
  2209.                 tags will be preceded by "+".
  2210.         
  2211.                 If you need a space between the '+' and the tag, then you
  2212.                 must specify a <pre> that contains a space, so you have
  2213.                 to enclose it in quotes:
  2214.         
  2215.                 FileBone \bbs\FB.SP "John Doe" SysOp 2:332/1 0 "+ "
  2216.         
  2217.         
  2218.                                 FileBone Format
  2219.         
  2220.         The format for the filebone style is:
  2221.         
  2222.           Area <Tag> <lev>[/<keys>] <flags> <desc>
  2223.         
  2224.           <Tag>
  2225.                   is the TIC area Tag.
  2226.                   The original filebone format allows 8 character
  2227.                   maximum but NEF is not that limited.
  2228.         
  2229.           <lev>
  2230.                   is the protection level of the area, for "FileFix"
  2231.                   functions.
  2232.                   The original format allows the range 0-4095 while NEF
  2233.                   allows 0-65535.
  2234.         
  2235.           <keys>
  2236.                   are a set of protection keys (1..8, A..X).
  2237.                   Not available in the original FileBone format.
  2238.         
  2239.           <flags>
  2240.                 is a combinaton of !.*& and possibly other characters.
  2241.         
  2242.                 By default (no flags) the area is uni-directional, from
  2243.                 the uplink to the defined downlinks.
  2244.         
  2245.                 ! : Can be found at any Filebone Hub.
  2246.                 . : Only on some Filebone Hubs.
  2247.                 * : Any node can hatch into.
  2248.                 & : Do not send to downlinks.
  2249.         
  2250.            Others : Private distribution.
  2251.         
  2252.            Examples:
  2253.         
  2254.                 !
  2255.                     normal area from the uplink to its downlinks,
  2256.                     available on all Filebone Hubs.
  2257.         
  2258.               !*&
  2259.                     return channel from the downlinks to the
  2260.                     uplink, available on all Filebone Hubs.
  2261.         
  2262.                .*
  2263.                     bidirectional area (any node can hatch into),
  2264.                     available on some Filebone hubs only.
  2265.         
  2266.         
  2267.           <desc>
  2268.                 is the description for the area.
  2269.         
  2270.         
  2271.           Example:
  2272.         
  2273.           Area APBBS    0   P ApWorks OS/2 BBS programs
  2274.           Area NODEDIFF 0/f ! FidoNet: Weekly NodeList Updates
  2275.         
  2276.         
  2277.         
  2278.         ForwardWildReq
  2279.         
  2280.                 When a FileFix "Add" request contains wildcards, by
  2281.                 default it is NOT forwarded to the filebone.
  2282.                 This verb enables even this type of request forward.
  2283.         
  2284.         
  2285.         
  2286.                                 Link Definitions
  2287.         
  2288.         
  2289.         The FileLink statement is used to define a link, specifying its
  2290.         password, attributes and privileges.
  2291.         
  2292.         The FileArea statement is used to define a file area, specifying
  2293.         its type and the list of connected systems (that must be defined
  2294.         via FileLink statements).
  2295.         
  2296.         
  2297.         FileLink <address> <password> [#<address>] <flags>
  2298.                  [<attr> [<level>[/<keys>] [<WTAG> ...]]]
  2299.         
  2300.                 The parameters of this keyword have been represented on
  2301.                 two lines because of space, but they MUST be listed on a
  2302.                 unique line in the .cfg file.
  2303.         
  2304.                 This keyword defines a file link; you must use a
  2305.                 FileLink statement for each of your links (both
  2306.                 downlinks and uplinks).
  2307.         
  2308.         
  2309.                 <address>
  2310.                            is the 4D address of the link.
  2311.         
  2312.                 <password>
  2313.                            is the case insensitive password to be used
  2314.                            for all TIC exchanges and for the Link Robot
  2315.                            function. NEF has no limit for the password
  2316.                            length, anyway you should be aware that other
  2317.                            similar programs might have limits, so check
  2318.                            with your downlink/uplink before choosing a
  2319.                            long password (8 characters should be OK for
  2320.                            everyone).
  2321.         
  2322.                 #<address>
  2323.                            This optional field indicates a "from" 4D
  2324.                            address to be used for the .TICs sent to this
  2325.                            link (overrides the zone-match and is in turn
  2326.                            overriden by the area override (see
  2327.                            "FileArea")).
  2328.         
  2329.                 <flags>
  2330.                            This field is a (case insensitive) set of
  2331.                            characters:
  2332.         
  2333.                            <H|C|D|N|F>[<S|T>][<I|O|*>].
  2334.         
  2335.                            It can be 1 to 3 characters long:
  2336.         
  2337.                          - The first flag is mandatory; it defines the
  2338.                            flavour of the file-attaches that NEF will
  2339.                            create for .TIC and associated files.
  2340.         
  2341.                            Please note that this flag can be overridden
  2342.                            on a per-area basis by prefixing the link
  2343.                            address with a new flavour-flag in the
  2344.                            FileArea statement.
  2345.         
  2346.                            The available choices for this flag and the
  2347.                            consequent file-attach extension follow:
  2348.         
  2349.                            H -> .HLO (Hold)
  2350.                            C -> .CLO (Crash)
  2351.                            D -> .DLO (Direct)
  2352.                            F -> .FLO (Normal)
  2353.                            N -> .FLO (Normal)
  2354.         
  2355.                            The 'N' flag is provided for "compatibility",
  2356.                            but it's the same as 'F'.
  2357.         
  2358.                          - The second flag is optional: it defines
  2359.                            whether NEF must send a .TIC together with
  2360.                            the file or not.
  2361.         
  2362.                            S -> .TIC sent (default).
  2363.                            T -> .TIC not sent.
  2364.         
  2365.                            Usually the default is used (this flag can be
  2366.                            omitted), but sometimes points like not
  2367.                            receiving the .TIC file.
  2368.         
  2369.                            Please note that this flag can be overridden
  2370.                            on a per-area basis by prefixing the link
  2371.                            address with a new flag in the FileArea
  2372.                            statement.
  2373.         
  2374.                          - The third flag is optional. It is provided
  2375.                            for completeness and it is sometimes very
  2376.                            handy, but it is recommended not to use it
  2377.                            too often since its use might unnecessarily
  2378.                            complicate the interpretation of the
  2379.                            configuration.
  2380.         
  2381.                            It defines whether this link has
  2382.                            bidirectional access to file areas or not.
  2383.         
  2384.                            This is an override to the "area direction"
  2385.                            field of each FileArea definition.
  2386.         
  2387.                            Please note that this flag can be overridden
  2388.                            on a per-area basis by prefixing the link
  2389.                            address with a new flag in the FileArea
  2390.                            statement.
  2391.         
  2392.                            I -> Only Input is allowed from this link.
  2393.                                 NEF will not send files.
  2394.                            O -> Only output is allowed to this link.
  2395.                                 NEF will not accept files.
  2396.                            * -> Bidirectional link.
  2397.         
  2398.                 <attr>
  2399.                            These are the (case insensitive) attributes
  2400.                            for the Link Robot's netmail replies:
  2401.         
  2402.                            K -> Kill/Sent
  2403.                            C -> Crash
  2404.                            H -> Hold
  2405.                            D -> Direct (equivalent to "CH")
  2406.                            N -> Normal (default)
  2407.                            O -> Normal (default)
  2408.         
  2409.                            The Private attribute is always implied.
  2410.         
  2411.                            ATTENTION: you should usually use the 'H'
  2412.                            attribute for file links that are not netmail
  2413.                            links too. Otherwise the "Normal" flavoured
  2414.                            netmail replies will be routed as per your
  2415.                            routing configuration instead of being holded
  2416.                            for the file link.
  2417.         
  2418.                 <level>
  2419.                            This is an integer number in the range
  2420.                            0-65535 and represents the access level to
  2421.                            the Link Robot for this node. Defaults to 0.
  2422.         
  2423.                            If it is greater or equal to the protection
  2424.                            level of a certain file area, then this node
  2425.                            can link the area via the Link Robot,
  2426.                            provided it has the necessary keys.
  2427.         
  2428.                 <keys>
  2429.                            is a subset of the following 32 element set:
  2430.                            {12345678ABCDEFGHIJKLMNOPQRSTUVWX}
  2431.                            and represents the (case insensitive) access
  2432.                            keys to the Link Robot for this node.
  2433.         
  2434.                            If <keys> contains all the keys that protect
  2435.                            a certain area, then the node can link the
  2436.                            area via the Link Robot, provided it has a
  2437.                            sufficient access level.
  2438.         
  2439.                 <WTAG>
  2440.                            The optional list of <WTAG>s specifies the
  2441.                            area TAGs that must be automatically linked
  2442.                            to this node when they are automatically
  2443.                            created by NEF.
  2444.         
  2445.                            New areas can be automatically created when
  2446.                            unknown TAGs are found in ingoing .TICs (see
  2447.                            "NewAreasFrom" above in this reference).
  2448.                            You can make NEF automatically link the
  2449.                            downlink to the areas that match the <WTAG>
  2450.                            specification(s).
  2451.         
  2452.         
  2453.             Examples:
  2454.         
  2455.         
  2456.               - FileLink 2:332/593 pwd593 IN
  2457.         
  2458.                 Node 2:332/593 has password "pwd503", is enabled to send
  2459.                 .TICs to us ('I') and the file attaches addressed to it
  2460.                 (if any) will be normal flavoured ('N').
  2461.         
  2462.                 Note that file attaches to this node will only be
  2463.                 possible if a local area override will be used, since
  2464.                 the 'I' flag instructs NEF to accept files from the node
  2465.                 but not to send to it.
  2466.         
  2467.                 Nothing is specified about the Link Robot's reply flags
  2468.                 and access level and keys, so this node will be able to
  2469.                 link only areas with protection level 0 and no keys; the
  2470.                 Robot's reply will be normal flavoured.
  2471.         
  2472.               - FileLink 2:331/196.1 pwd1961 H NK 300/ab
  2473.         
  2474.                 Node 2:331/196.1 has password "pwd1961", nothing is
  2475.                 specified about link direction (it will depend on the
  2476.                 "area direction" and local overrides), the file attaches
  2477.                 will be Hold flavoured ('H'), the reply netmails will be
  2478.                 normal flavoured ('N') and kill/sent ('K'), the access
  2479.                 level is 300 and the access keys are a,b.
  2480.         
  2481.               - FileLink 2:332/1 pwd1 #2:332/500 H N 900/ab MI* *OS2*
  2482.         
  2483.                 Node 2:332/1 has password "pwd1", all the TICs sent to
  2484.                 this node will use the from-address 2:332/500 (provided
  2485.                 there is no aka override at the "FileArea" level), the
  2486.                 file attaches will be Hold flavoured ('H'), the netmail
  2487.                 replies will be normal flavoured ('N'), the access level
  2488.                 is 900 and the access keys a,b.
  2489.         
  2490.                 New areas whose TAG begins with "MI" or contains "OS2"
  2491.                 will be automatically linked when they are automatically
  2492.                 created by NEF.
  2493.         
  2494.         
  2495.         FileArea <TAG> <path> I|O|* [#<address>] [-0[<days>]]
  2496.                  [[<flags>]<link> ...]
  2497.         
  2498.                 The parameters of this keyword have been represented on
  2499.                 two lines because of space, but they MUST be listed on a
  2500.                 unique line in the .cfg file.
  2501.         
  2502.                 This keyword defines an echo file area.
  2503.         
  2504.                 If you have a small system, you can put the area
  2505.                 definitions in the main configuration file (e.g.
  2506.                 NEF.CFG). For systems with a large number of areas and
  2507.                 links, it is recommended to use a separate file for the
  2508.                 area definitions: see the "TicAreaCfg" keyword, formerly
  2509.                 discussed in this documentation.
  2510.         
  2511.                 ATTENTION: when using the "TicAreaCfg" separate file,
  2512.                 you must put ALL the FileArea statements in that file.
  2513.                 You are not allowed to put area definitions both in the
  2514.                 main .cfg file and in the dedicated TicAreaCfg file at
  2515.                 the same time !
  2516.         
  2517.                 Please note that all the FileArea statements, if
  2518.                 included in the main .cfg file, MUST be defined _after_
  2519.                 the FileLink statements.
  2520.         
  2521.                 <TAG> is the area TAG.
  2522.         
  2523.                 <path> is the directory for the file area.
  2524.         
  2525.                 I|O|*  is the (case insensitive) "area direction" and
  2526.                        defines the default direction for the area:
  2527.         
  2528.                     'I'
  2529.                          we accept files from the listed nodes but do
  2530.                          not send to them, unless an override flag is
  2531.                          present before the <link> or in the pertinent
  2532.                          "FileLink" definition.
  2533.         
  2534.                          This should usually be used for "pre" areas, in
  2535.                          which files must be collected from downlinks
  2536.                          and sent to the area coordinator via the
  2537.                          uplink, which will probably need a local 'O'
  2538.                          override.
  2539.         
  2540.                     'O'
  2541.                          we send files to the listed nodes but do not
  2542.                          accept from them, unless an override flag is
  2543.                          present before the <link> or in the pertinent
  2544.                          "FileLink" definition.
  2545.         
  2546.                          This should usually be used for areas that must
  2547.                          be distributed to downlinks. The uplink will
  2548.                          need a local 'I' override before its <link>
  2549.                          field or a global one in its FileLink
  2550.                          definition.
  2551.         
  2552.                     '*'
  2553.                          the area is bidirectional, so we both send and
  2554.                          accept files to/from the listed nodes, unless
  2555.                          an override flag is present before the <link>
  2556.                          or in the pertinent "FileLink" definition.
  2557.         
  2558.                          This should be used for bidirectional areas, in
  2559.                          which everybody is allowed to "hatch" files.
  2560.         
  2561.         
  2562.                 #<address>
  2563.                          defines the primary address to be used for
  2564.                          this area; overrides both the default
  2565.                          zone-match and the aka overrides in "FileLink"
  2566.                          definitions
  2567.         
  2568.                 -0[<days>]
  2569.                          When the "-0" (zero) is specified, the area is
  2570.                          "Passthru", that is its files will be deleted
  2571.                          when already sent to all the downlinks. Please
  2572.                          note that ANY file (apart from FILES.*) present
  2573.                          in the <path> and not attached to any system
  2574.                          will be deleted.
  2575.         
  2576.                          If the optional <days> parameter is used, the
  2577.                          files will not be deleted until they become
  2578.                          older than <days> _AND_ not referenced by any
  2579.                          file attach.
  2580.         
  2581.                          <days> is an integer <= 65535.
  2582.         
  2583.                          Please note that you can use the Touch and
  2584.                          KillDate statements to control the date used to
  2585.                          evalutate the file age.
  2586.         
  2587.                          NEF must be explicitly instructed to delete the
  2588.                          old files in passthru areas, usually in some
  2589.                          maintenance event.
  2590.         
  2591.                          See also the "-p" and "CLEAN" command line
  2592.                          options.
  2593.         
  2594.                 The list of linked nodes follows; each node can have
  2595.                 some <flags> attached before the node address. The
  2596.                 available flags are the same as for the <flags> field in
  2597.                 the "FileLink" statement.
  2598.         
  2599.                 <flags>
  2600.                            This is an optional (case insensitive) field
  2601.                            made up of 1 to 3 characters:
  2602.                            [H|C|D|N|F][S|T][I|O|*].
  2603.         
  2604.                          - The first flag defines the flavour of the
  2605.                            file-attaches that NEF will create for .TIC
  2606.                            and associated files.
  2607.         
  2608.                            Please note that this flag overrides that in
  2609.                            the pertinent "FileLink" statement.
  2610.         
  2611.                            The available choices for this flag and the
  2612.                            consequent file-attach extension follow:
  2613.         
  2614.                            H -> .HLO (Hold)
  2615.                            C -> .CLO (Crash)
  2616.                            D -> .DLO (Direct)
  2617.                            F -> .FLO (Normal)
  2618.                            N -> .FLO (Normal)
  2619.         
  2620.                            The 'N' flag is provided for "compatibility",
  2621.                            but it's the same as 'F'.
  2622.         
  2623.                          - The second flag defines whether NEF must send
  2624.                            a .TIC together with the file or not.
  2625.         
  2626.                            S -> .TIC sent.
  2627.                            T -> .TIC not sent.
  2628.         
  2629.                            Please note that this flag overrides that in
  2630.                            the pertinent "FileLink" statement.
  2631.         
  2632.                          - The third flag defines the direction of the
  2633.                            link.
  2634.         
  2635.                            Please note that this flag overrides that in
  2636.                            the pertinent "FileLink" statement, which in
  2637.                            turn overrides the "area direction".
  2638.         
  2639.                            I -> Only Input is allowed from this link.
  2640.                                 NEF will not send files.
  2641.                            O -> Only output is allowed to this link.
  2642.                                 NEF will not accept files.
  2643.                            * -> Bidirectional link.
  2644.         
  2645.                 <link>
  2646.                            This is a 4D address, that can be abbreviated
  2647.                            whenever the preceding address has the same
  2648.                            zone, zone:net or zone:net/node.
  2649.         
  2650.                            For the first <link>, if incomplete, the
  2651.                            primary address for the area is used; anyway
  2652.                            NEF always writes the first address in
  2653.                            complete form when rewriting the area due to
  2654.                            a Link Robot command.
  2655.         
  2656.             Examples:
  2657.         
  2658.             Please note that the situation might be a little different
  2659.             from what explained below, since the FileLink definitions
  2660.             could have some overriding flags.
  2661.         
  2662.         
  2663.             FileArea AREA1 d:\file\area1 O I2:332/1 504.1 .2 1:2/3
  2664.         
  2665.             Typical area definition, where we receive from the
  2666.             uplink (marked with 'I') and forward to the listed downlinks
  2667.             (area direction 'O').
  2668.         
  2669.         
  2670.             FileArea AREA2 d:\file\area2 O -0 I2:332/1 504.1 .2 1:2/3
  2671.         
  2672.             Same as above, but passthru.
  2673.         
  2674.         
  2675.             FileArea AREA3 d:\file\area3 O -030 I2:332/1 504.1 .2 1:2/3
  2676.         
  2677.             Same as above, but the files will not be deleted until they
  2678.             are 30 day old.
  2679.         
  2680.         
  2681.             FileArea AREA4 d:\file\area4 I O2:5/1 3/1 332/504.2 .3
  2682.         
  2683.             This is a "reverse" area, where we receive from the listed
  2684.             nodes (area direction 'I') and send to the one marked with
  2685.             'O'.
  2686.         
  2687.         
  2688.             FileArea AREA5 d:\file\area5 * 2:5/1 3/1 332/504.2 .3
  2689.         
  2690.             This is a bidirectional area (direction '*'), where we
  2691.             receive from any of the listed nodes and forward to all the
  2692.             others.
  2693.         
  2694.         
  2695.             FileArea AREA6 d:\file\area6 O #2:332/500 I2:332/596 C555
  2696.         
  2697.             A normal "up-link to down-links" area ('O'); we use
  2698.             2:332/500 as the primary address, accept files from
  2699.             2:332/596 and forward to 2:332/555 with a crash flavoured
  2700.             file attach.
  2701.         
  2702.         
  2703.             FileArea AREA7 d:\file\area7 O S2:332/504.1 10:10/0 *100/1
  2704.         
  2705.             Normal "up-link to down-links" area ('O'); 10:100/1 is the
  2706.             only node enabled to send to us (bidirectional override
  2707.             '*'); we forward to 2:332/504.1 and 10:10/0. If we hatch
  2708.             files, we send to 10:100/1 too, since it is bidirectional.
  2709.             We send the .TIC accompanying files to 2:332/504.1 ('S')
  2710.             even if it had a 'T' flag in its FileLink definition.
  2711.         
  2712.         
  2713.  
  2714.         
  2715.                             COMPRESS DEFINITION FILE
  2716.         
  2717.         
  2718.         The file specified in the CompressCfg statement is a sequence of
  2719.         Archive definition blocks, each one starting with "Archiver" and
  2720.         ending with "End Archiver". You can find an example in the
  2721.         Compress.Cfg file included in the distribution pack.
  2722.         
  2723.         The order of the archive definition blocks within this file may
  2724.         be important: when trying to unpack a compressed file, the list
  2725.         of archivers is scanned in a reverse order.
  2726.         
  2727.         In the case of two archivers that use the same identification
  2728.         string (e.g. ARC and PAK), you must specify the archiver that
  2729.         can unpack both (PAK) after the other one (ARC).
  2730.         
  2731.         The compress.cfg file can be shared between DOS/NT and OS/2
  2732.         applications: the "DOS" and "OS2" keywords are available to
  2733.         distinguish between the commands to be used under DOS/NT and
  2734.         OS/2.
  2735.         
  2736.         O.S. specific archivers or commands must be prefixed with the
  2737.         relevant keyword.
  2738.         
  2739.         IMPORTANT NOTE: The lines that begin with "DOS" or "OS2" are
  2740.         parsed by the DOS/NT and OS/2 versions respectively. If you need
  2741.         the OS/2 version to execute a DOS command, you MUST NOT use the
  2742.         DOS keyword: if you do, it will never parse that line; if you do
  2743.         not, it will execute the DOS command "normally", provided you
  2744.         have installed OS/2's Dos support.
  2745.         
  2746.         See the examples below.
  2747.         
  2748.         
  2749.         Archiver <ARCname>
  2750.         
  2751.                 Starts the Archive definition block.
  2752.         
  2753.                 <ARCname> is the name used to identify this archiver.
  2754.         
  2755.             Example:
  2756.         
  2757.                 Archiver ZIP
  2758.         
  2759.         
  2760.         
  2761.         Extension  <ext>
  2762.         
  2763.                 Specifies the default extension for the compressed
  2764.                 files.
  2765.         
  2766.             Example:
  2767.         
  2768.                 Extension ZIP
  2769.         
  2770.         
  2771.         
  2772.         Ident <ofs>,<ID>
  2773.         
  2774.                 <ofs> is a decimal integer number representing the
  2775.                 offset at which an archive identity marker <ID> must be
  2776.                 present.
  2777.         
  2778.                 Negative values can be used to indicate offsets from the
  2779.                 END of a compressed file. -1 means "the last byte", -2
  2780.                 "the second last byte" and so on.
  2781.         
  2782.                 <ID> is a series of hexadecimal figures which represent
  2783.                 the bytes of the marker string that must be present at
  2784.                 the specified offset of the archive file.
  2785.         
  2786.             Example:
  2787.         
  2788.                 Ident 0,504b0304  ; "PK^c^d"
  2789.         
  2790.         
  2791.         
  2792.         Add <command>
  2793.         
  2794.                 Specifies the command to add files to an archive.
  2795.                 %a and %f are translated to the name of the archive and
  2796.                 file to add.
  2797.         
  2798.             Example:
  2799.         
  2800.                 Add zip -jk %a %f
  2801.         
  2802.         
  2803.         
  2804.         Extract <command>
  2805.         
  2806.                 Specifies the command to extract files from an archive.
  2807.                 %a and %f are translated to the name of the archive and
  2808.                 file to extract.
  2809.         
  2810.             Example:
  2811.         
  2812.                 Extract unzip -qqnjC %a %f
  2813.         
  2814.         
  2815.         
  2816.         View <command>
  2817.         
  2818.                 This line is recognized and accepted for compatibility,
  2819.                 but not used.
  2820.         
  2821.         
  2822.         
  2823.         End Archiver
  2824.         
  2825.                 This statement is used to close a Archive definition.
  2826.         
  2827.         
  2828.                                     Examples
  2829.         
  2830.         
  2831.             Complete example 1 (you need OS/2 only):
  2832.         
  2833.         Archiver ZIP
  2834.              Extension     ZIP
  2835.              Ident         0,504b0304
  2836.              Add           zip -jk %a %f
  2837.              Extract       unzip -qqnjC %a %f
  2838.              View          unzip -v %a
  2839.         End Archiver
  2840.         
  2841.         
  2842.             Complete example 2 (you need DOS only):
  2843.         
  2844.         Archiver ZIP
  2845.              Extension     ZIP
  2846.              Ident         0,504b0304
  2847.              Add           pkzip -a %a %f
  2848.              Extract       pkunzip -n %a %f
  2849.              View          pkzip -v %a
  2850.         End Archiver
  2851.         
  2852.         
  2853.             Complete example 3 (you need both OS/2 and DOS):
  2854.         
  2855.         Archiver ZIP
  2856.              Extension     ZIP
  2857.              Ident         0,504b0304
  2858.         OS2  Add           zip -jk %a %f
  2859.         DOS  Add           pkzip -a %a %f
  2860.         OS2  Extract       unzip -qqnjC %a %f
  2861.         DOS  Extract       pkunzip -n %a %f
  2862.         OS2  View          unzip -v %a
  2863.         DOS  View          pkzip -v %a
  2864.         End Archiver
  2865.         
  2866.         
  2867.             Complete example 4 (archiver to be used under DOS only):
  2868.         
  2869.         DOS Archiver ZOO
  2870.         DOS     Extension       ZOO
  2871.         DOS     Ident           0,5a4f4f                        ; "ZOO"
  2872.         DOS     Add             zoo a: %a %f
  2873.         DOS     Extract         zoo e:O %a %f
  2874.         DOS     View            zoo v %a
  2875.         DOS End Archiver
  2876.         
  2877.         
  2878.             Complete example 5 (it's a DOS executable, to be used under
  2879.                                 DOS or OS/2 indifferently):
  2880.         
  2881.         Archiver ZOO
  2882.              Extension       ZOO
  2883.              Ident           0,5a4f4f                        ; "ZOO"
  2884.              Add             zoo a: %a %f
  2885.              Extract         zoo e:O %a %f
  2886.              View            zoo v %a
  2887.         End Archiver
  2888.  
  2889.         
  2890.                                 TroubleShooting
  2891.         
  2892.         
  2893.         Problem:
  2894.                   NEF does not append to Echotoss.log.
  2895.         
  2896.         Solution:
  2897.                   Make sure that the announcement area is defined with
  2898.                   AreaTag (not AreaPath).
  2899.                   You might also need the SquishCfg keyword, if you want
  2900.                   NEF to automatically retrieve the area Path and type.
  2901.         
  2902.         
  2903.         
  2904.                                S H A R E W A R E
  2905.         
  2906.         
  2907.         If you like this program and continue using it, you should pay
  2908.         the author for his work, as per the ShareWare concept of
  2909.         distribution.
  2910.         
  2911.         Please see LICENSE.DOC and REGISTER.DOC for information.
  2912.         
  2913.         Thank you for your interest in ApWorks programs.
  2914.         
  2915.